공부집

kmean clustering 개인공부 본문

AI 개인 기초공부

kmean clustering 개인공부

ikemen_hk 2018. 3. 26. 23:41
import pandas as pd
import numpy as np
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt
import seaborn as sns
get_ipython().run_line_magic('matplotlib', 'inline')

df = pd.DataFrame(columns=['x', 'y'])
#데이터 프레임 만들기 x축, y축
df.loc[0] = [3,1]
df.loc[1] = [4,1]
df.loc[2] = [3,2]
df.loc[3] = [4,2]
df.loc[4] = [10,5]
df.loc[5] = [10,6]
df.loc[6] = [11,5]
df.loc[7] = [11,6]
df.loc[8] = [15,1]
df.loc[9] = [15,2]
df.loc[10] = [16,1]
df.loc[11] = [16,2]
#df.head(20)

#2D 차트, 선=False
#sns.lmplot('x','y', data=df, fit_reg=False, scatter_kws={"s":200})
#plt.xlabel('x')
#plt.ylabel('y')

# In[61]:

data_points = df.values
#클러스트 3개, fit 데이터 설정
kmeans = KMeans(n_clusters=3).fit(data_points)
# In[62]:



kmeans.cluster_centers_
# 데이터 중심에 클러스트


kmeans.labels_



df['cluster_id'] = kmeans.labels_
# In[65]:


#2D 차트, 선=False
sns.lmplot('x','y', data=df, fit_reg=False, scatter_kws={"s":200})

plt.xlabel('x')
plt.ylabel('y')

data_points = df.values

#클러스트 3개, 각각의 데이터에 대한 클러스트가 붙음
kmeans = KMeans(n_clusters=3).fit(data_points)

sns.lmplot('x','y',data=df, fit_reg=False, scatter_kws={"s":150}, hue="cluster_id")
# [hue="cluster_id"]이건 클러스트를 기준으로 색깔 나누는 명령어
# scatter_kws이거는 점 크기 150
# fit_reg 은 선을 사용여부



'AI 개인 기초공부' 카테고리의 다른 글

코퍼스 학습  (0) 2018.11.22
dataFrame 함수 정리  (0) 2018.03.29
dataFrame 인덱싱 및 2차 리스트  (0) 2018.03.27
feature engineering 부터  (0) 2018.03.27
동영상 강의 링크  (0) 2017.12.20
Comments