python中的K-means算法模塊

上一篇文章https://blog.csdn.net/weixin_44239541/article/details/90669949寫到k-meann算法的思想,其實python中有專門的算法模塊,一上篇文章中的簡單數據爲例,來實現。

數據如圖所示:

使用sklearn實現分類:

import pandas as pd
import numpy as np
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt
data = pd.read_csv(r'C:\Users\Administrator\Desktop\company.csv', encoding='gbk')

x = data[['平均消費週期(天)','平均每次消費金額']]

# 聚類實現
# 進行分類,分爲三類
kms = KMeans(n_clusters=3)
# 進行聚合,實現的是每一行的數據屬於三類中的哪一類
y = kms.fit_predict(x)
print(y)

# 取不同類別的索引
mask1 = y==0
mask2 = y==1
mask3 = y==2

plt.figure()
plt.scatter(x['平均消費週期(天)'][mask1],x['平均每次消費金額'][mask1])
plt.scatter(x['平均消費週期(天)'][mask2],x['平均每次消費金額'][mask2])
plt.scatter(x['平均消費週期(天)'][mask3],x['平均每次消費金額'][mask3])
plt.show()

最後的圖像:

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章