Python ';K-平均值';聚类分析
我想得到价值观例如,使用k-均值方法计算的每组簇的平均值、最小值、最大标准偏差。下面的代码正确吗Python ';K-平均值';聚类分析,python,statistics,k-means,Python,Statistics,K Means,我想得到价值观例如,使用k-均值方法计算的每组簇的平均值、最小值、最大标准偏差。下面的代码正确吗 import pandas as pd from sklearn.cluster import KMeans dataset = pd.read_csv("C:/Users/../cardio_train_py.csv", sep=';') clusterDB_1 = dataset[['Age','BMI','cardio']].c
import pandas as pd
from sklearn.cluster import KMeans
dataset = pd.read_csv("C:/Users/../cardio_train_py.csv", sep=';')
clusterDB_1 = dataset[['Age','BMI','cardio']].copy()
kmeans = KMeans(n_clusters=8).fit(clusterDB_1)
X=[0,1,2,3,4,5,6,7]
print('Age mean() for each cluster')
for x in X:
check = clusterDB_1[kmeans.labels_ == x]
print(check['Age'].mean())
print('BMI mean() for each cluster')
for x in X:
check = clusterDB_1[kmeans.labels_ == x]
print(check['BMI'].mean())
print('cardio == 0 count() for each cluster')
for x in X:
check = clusterDB_1[kmeans.labels_ == x]
print(len(check[check['cardio'] == 1]))
我这样问是因为得到的值(例如,年龄、BMI和心脏计数的平均值==0)与统计中获得的值不同(照片显示了该计划的结果)
下面是BMI(Python计算)的结果
这是我的数据库=>
感谢所有帮助和提示:)以下内容将在一行中完成您想要的操作:
clusterDB_1.groupby(kmeans.labels_).mean()
python有没有办法知道cardio是一个分类变量?没有。您必须将它从列的范围中排除。有没有任何库可以处理这个问题?
clusterDB_1.groupby(kmeans.labels_).mean()