Я импортировал ~ 340 000 записей о клиентах с помощью Redshift SQL в Jupyter Notebook и пытался использовать Kmeans для кластеризации этих клиентов в 4 сегмента, основываясь на доходе и количестве транзакций, которые они совершили за определенный период времени.Но Kmeans маркировали ~ 269 тысяч из них (78,9%) как кластер NaN;267k / 340k были помечены как NaN, когда я попробовал 10 сегментов.Когда я применил те же коды к небольшому подмножеству - 692 из 1000 были помечены как кластер NaN.
Извините, что я не могу предоставить группу смоделированных данных для ваших испытаний, поскольку Kmeans работал совершенно нормальнос данными, напрямую импортированными в Excel.
Ниже приведены мои коды FYI -
import pandas as pd
import numpy as np
from scipy import stats
from scipy.cluster.vq import kmeans, vq
f1_df = df_df['total_revenue_m3_from_personal_investment'].values
f2_df = df_df['total_trades_m3'].values
df_tr = np.array(list(zip(f1_df, f2_df)))
попробуйте 4 кластера
kmeans_4 = KMeans(n_clusters=4)
details_4 = kmeans_4.fit(df_tr)
labels_4 = details_4.predict(df_tr)
centroids_4 = details_4.cluster_centers_
idx,_ = vq(df_tr, centroids_4)