2
私は、カテゴリデータのクラスタ解析を行っています。したがって、kモードアプローチを使用しています。kモードのクラスタ機能を公開する
私のデータは、環境設定調査の形になっています: どのように髪と目が好きですか?
回答者は4可能性の固定(複数選択)セットからの回答を拾うことができます。
したがって、ダミーを取得し、kモードを適用し、クラスタを最初のdfに接続して、pcaを使用して2Dでプロットします。
私のコードは次のようになります。
import numpy as np
import pandas as pd
from kmodes import kmodes
df_dummy = pd.get_dummies(df)
#transform into numpy array
x = df_dummy.reset_index().values
km = kmodes.KModes(n_clusters=3, init='Huang', n_init=5, verbose=0)
clusters = km.fit_predict(x)
df_dummy['clusters'] = clusters
import matplotlib.pyplot as plt
from sklearn.decomposition import PCA
pca = PCA(2)
# Turn the dummified df into two columns with PCA
plot_columns = pca.fit_transform(df_dummy.ix[:,0:12])
# Plot based on the two dimensions, and shade by cluster label
plt.scatter(x=plot_columns[:,1], y=plot_columns[:,0], c=df_dummy["clusters"], s=30)
plt.show()
と私は視覚化することができます:
を今私の問題は、次のとおりです。 何とか各クラスタの顕著な特徴を明らかにすることはできますか? 散布図の緑色の点群の主な特徴(金髪や青い目)は何ですか?
クラスタリングが発生しましたが、クラスタリングが実際に意味するものを変換する方法が見つかりません。
.labels_オブジェクトで再生する必要がありますか?