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_ 개체로 재생해야합니까?