資源簡介
利用python進(jìn)行聚類分析,適用于python3.7版本,經(jīng)過實際例子驗證。
代碼片段和文件信息
#-*-?coding:?utf-8?-*-
#使用K-Means算法聚類消費(fèi)行為特征數(shù)據(jù)
import?pandas?as?pd
#參數(shù)初始化
inputfile?=?‘d:/Python/data/consumption_data.xls‘?#銷量及其他屬性數(shù)據(jù)
outputfile?=?‘d:/Python/tmp/data_type.xls‘?#保存結(jié)果的文件名
k?=?3?#聚類的類別
iteration?=?500?#聚類最大循環(huán)次數(shù)
data?=?pd.read_excel(inputfile?index_col?=?‘Id‘)?#讀取數(shù)據(jù)
data_zs?=?1.0*(data?-?data.mean())/data.std()?#數(shù)據(jù)標(biāo)準(zhǔn)化
from?sklearn.cluster?import?KMeans
model?=?KMeans(n_clusters?=?k?n_jobs?=?4?max_iter?=?iteration)?#分為k類,并發(fā)數(shù)4
model.fit(data_zs)?#開始聚類
#簡單打印結(jié)果
r1?=?pd.Series(model.labels_).value_counts()?#統(tǒng)計各個類別的數(shù)目
r2?=?pd.Dataframe(model.cluster_centers_)?#找出聚類中心
r?=?pd.concat([r2?r1]?axis?=?1)?#橫向連接(0是縱向),得到聚類中心對應(yīng)的類別下的數(shù)目
r.columns?=?list(data.columns)?+?
評論
共有 條評論