Это не похоже на вопрос о кластеризации. Похоже, вам просто нужно сгруппировать по значениям 1, 2, 3, 4 и 5. Если вы действительно хотите сделать кластеризацию, вы можете сделать это следующим образом.
import pandas as pd
import numpy as np
from numpy import vstack,array
from numpy.random import rand
from scipy.cluster.vq import kmeans,vq
from sklearn.cluster import KMeans
df= pd.read_csv("filename.csv")
#format the data as a numpy array to feed into the K-Means algorithm
data = np.asarray([np.asarray(df['Value1']),np.asarray(df['Value2'])])
X = data
distorsions = []
for k in range(2, 20):
k_means = KMeans(n_clusters=k)
k_means.fit(X)
distorsions.append(k_means.inertia_)
fig = plt.figure(figsize=(15, 5))
plt.plot(range(2, 20), distorsions)
plt.grid(True)
plt.title('Elbow curve')
# computing K-Means with K = 5 (5 clusters)
centroids,_ = kmeans(data,5)
# assign each sample to a cluster
idx,_ = vq(data,centroids)
details = [(name,cluster) for name, cluster in zip(df.index,idx)]
for detail in details:
print(detail)