【问题描述】假设某餐厅现有4个客户分别编号为a、b、c、d这4位客户某段时间的平均消费水平分别为1、2、4、5万元请用kmeans算法将这4个客户聚类为VIP客户和普通客户两个类别。【输入形式】【输出形式】0 0 1 115 45如何用python语言作答
可以使用Python中的sklearn库中的KMeans算法进行聚类。具体代码如下:
from sklearn.cluster import KMeans
import numpy as np
# 客户消费水平数据
X = np.array([[1], [2], [4], [5]])
# 聚类
kmeans = KMeans(n_clusters=2, random_state=0).fit(X)
# 输出聚类结果
print(kmeans.labels_)
# 输出聚类中心
print(kmeans.cluster_centers_)
输出结果为:
[0 0 1 1]
[[1.5]
[4.5]]
其中kmeans.labels_为聚类结果,每个元素表示对应客户属于哪个聚类;kmeans.cluster_centers_为聚类中心,其中第一个元素表示VIP客户的平均消费水平,第二个元素表示普通客户的平均消费水平。
原文地址: https://www.cveoy.top/t/topic/fWPn 著作权归作者所有。请勿转载和采集!