教程 ·

聚类分析(K-means)用 AI 一句话完成 — 客户细分/市场分群完整教程

从 K-means 原理到聚类数确定(肘部法则+轮廓系数),AI 一句话完成聚类分析,输出聚类中心、各类规模、特征刻画,并给出符合 APA 学术规范的论文报告句式。

数据里藏着自然分群,但 K 值怎么定、要不要标准化、结果怎么写进论文 —— 这三道坎卡住了大多数人。这篇文章带你用 AI 一句话全部搞定。

聚类分析在学术/商业研究中的常见痛点

如果你做过消费者研究、用户画像或市场细分,一定遇到过这些困境:

  • "K 值到底选几?选 3 还是选 5?有没有客观标准?"
  • "变量量纲差异太大(比如收入 vs 年龄),要不要先标准化?不标准化结果会偏吗?"
  • "跑出来 3 个聚类,怎么给每类起名字、写特征描述?"
  • "论文方法部分怎么写聚类分析?审稿人要求报告哪些指标?"
  • "K-means 和层次聚类有什么区别,我该用哪个?"

传统做法是在 SPSS 里点 分析分类K-均值聚类,手动试 K=2、3、4、5,逐次比较,再用 Excel 整理输出表,最后还要自己构思特征描述。整个流程少说两小时。

ChatSRS 把这个流程压缩到一句话。


案例数据:消费者购物行为研究(市场细分场景)

假设你是一名商业管理硕士生,研究题目是"基于消费行为的在线购物用户细分及其购物意愿差异"。数据来自 350 名网购用户的问卷,包含以下连续变量:

monthly_spend     月均网购消费(元)
visit_freq        月均访问电商平台次数
cart_abandon      平均购物车放弃率(%)
review_read       购买前阅读评价数量
price_sensitivity 价格敏感度量表得分(1-7 分)
brand_loyalty     品牌忠诚度量表得分(1-7 分)

研究目的:将消费者分为若干典型群体,并检验各群体在购物意愿上是否存在显著差异(结合后续 ANOVA 分析)。


K-means 原理简介(够用就行)

K-means 的核心思路很直观:

  1. 随机初始化 K 个聚类中心(质心)
  2. 分配步骤:把每个样本分配给距离最近的质心
  3. 更新步骤:重新计算每个簇内所有样本的均值,作为新质心
  4. 迭代:重复步骤 2-3,直到质心不再移动(收敛)

算法最小化的目标函数是簇内平方和(SSE / Within-Cluster Sum of Squares),即各样本到其所属质心距离的平方总和。

关键前提

  • 变量应为连续型(比例/区间尺度)。含定类变量时需改用 K-prototype 算法(ChatSRS 自动处理)
  • 建议对量纲差异大的变量先做 Z-score 标准化,否则取值范围大的变量会主导距离计算
  • K-means 对初始质心随机性敏感,通常设置多次随机重启取最优结果(ChatSRS 默认多次运行)

用 AI 一句话完成聚类分析

chatsrs.com 上传数据后输入:

"对 monthly_spend、visit_freq、cart_abandon、review_read、price_sensitivity、brand_loyalty 这 6 个变量做 K-means 聚类分析。 请:

  1. 先做标准化处理(Z-score)
  2. 用肘部法则(SSE 折线图)和平均轮廓系数确定最优聚类数 K
  3. 用最优 K 跑 K-means,输出最终聚类中心表、各类样本量和占比
  4. 做单因素 ANOVA 检验 6 个变量在各聚类间的差异(含 F 值、p 值、eta²)
  5. 给出每个聚类的特征标签和描述
  6. 输出 APA 格式的中文文字分析"

60 秒后 ChatSRS 输出完整结果。


输出结果怎么读

输出 1:最优聚类数确定(肘部法则 + 轮廓系数)

肘部法则(SSE 折线图)
K = 2:SSE = 1847.3
K = 3:SSE = 1124.6  [SSE 下降 Delta = 722.7]
K = 4:SSE =  891.2  [SSE 下降 Delta = 233.4]  <-- 肘部拐点
K = 5:SSE =  754.8  [SSE 下降 Delta = 136.4]
K = 6:SSE =  672.1  [SSE 下降 Delta =  82.7]

平均轮廓系数
K = 2:轮廓系数 = 0.347
K = 3:轮廓系数 = 0.421
K = 4:轮廓系数 = 0.463  <-- 最高,推荐
K = 5:轮廓系数 = 0.398
K = 6:轮廓系数 = 0.351

综合判断:肘部法则和轮廓系数均指向 K = 4,最终选择 4 个聚类。

怎么看

  • 肘部法则:SSE 随 K 增大而下降,但当 K 超过某个值后降幅明显变缓,那个"拐点"就是推荐的 K 值。本例中 K=3 到 K=4 降幅从 722 骤减至 233,K=4 是拐点。
  • 轮廓系数(范围 -1 到 1):越接近 1 表示聚类质量越好,各簇分离度越高、内聚性越强。本例 K=4 时轮廓系数最高(0.463),与肘部法则一致,K=4 为最优选择。

输出 2:聚类中心表(标准化后)

表 1  K-means 最终聚类中心(标准化 Z-score,K = 4,N = 350)

变量              第 1 类    第 2 类    第 3 类    第 4 类
monthly_spend     +1.42      -0.87      +0.31      -0.64
visit_freq        +1.18      -0.72      -0.15      +0.89
cart_abandon      -0.93      +0.41      +1.24      -0.38
review_read       +0.76      -0.52      +1.08      -0.81
price_sensitivity -1.24      +1.32      +0.67      -0.43
brand_loyalty     +1.35      -0.64      -0.22      +0.58
样本量(n)         82        97         71        100
占比(%)         23.4%     27.7%     20.3%      28.6%

怎么读:Z-score 聚类中心反映该类在各变量上相对于总体均值的偏离方向和程度。正值越大 = 该类在这个变量上显著偏高;负值越大 = 显著偏低。由此可以为每个聚类描绘"画像"。

输出 3:各聚类 ANOVA 差异检验

表 2  各聚类在 6 个变量上的方差分析结果(N = 350)

变量                  第 1 类        第 2 类        第 3 类        第 4 类        F(3,346)    p           eta²
                      M (SD)         M (SD)         M (SD)         M (SD)
monthly_spend         4821 (612)     1843 (498)     3102 (541)     2214 (487)     87.42       <.001 ***   .431
visit_freq            28.4 (6.2)     11.6 (4.8)     18.3 (5.4)     26.7 (5.9)    74.18       <.001 ***   .392
cart_abandon          18.2 (7.1)     41.3 (9.4)     63.7 (11.2)    27.4 (8.3)    96.54       <.001 ***   .456
review_read           12.3 (3.8)      4.7 (2.6)     14.8 (4.1)      3.2 (2.1)    58.31       <.001 ***   .336
price_sensitivity      2.8 (0.9)      6.1 (0.8)      5.3 (1.0)      3.6 (1.1)    121.7       <.001 ***   .514
brand_loyalty          6.2 (0.7)      3.1 (0.9)      3.4 (1.0)      5.7 (0.8)    103.4       <.001 ***   .473

注:*** p < .001。eta² 均达到大效应(Cohen 阈值 .14)。

关键判读:所有 6 个变量在 4 个聚类间差异均极显著(p < .001),且效应量均属大效应,说明聚类方案具有良好区分效度。

输出 4:聚类特征刻画(AI 自动命名)

第 1 类(n=82,23.4%):「高消费忠诚型」
  - 月均消费最高(4821 元)、访问频次高(28.4 次/月)
  - 购物车放弃率最低(18.2%)、品牌忠诚度最高(6.2/7)
  - 价格敏感度最低(2.8/7)
  - 画像:有稳定偏好品牌的活跃消费者,对价格不敏感,决策果断

第 2 类(n=97,27.7%):「低频价敏型」
  - 月均消费最低(1843 元)、访问频次低(11.6 次/月)
  - 价格敏感度最高(6.1/7)、品牌忠诚度低(3.1/7)
  - 画像:偶发性购物者,主要由促销/折扣驱动,品牌黏性弱

第 3 类(n=71,20.3%):「高犹豫谨慎型」
  - 购物车放弃率最高(63.7%)、购前阅读评价最多(14.8 条)
  - 价格敏感度中高(5.3/7)、访问频次中等
  - 画像:决策谨慎、比价意愿强,信息收集充分但容易在最终购买时放弃

第 4 类(n=100,28.6%):「高频轻量型」
  - 访问频次较高(26.7 次/月)但消费额中低(2214 元)
  - 品牌忠诚度中高(5.7/7)、购前阅读评价少(3.2 条)
  - 画像:高频浏览但单次消费金额有限,有一定品牌偏好,购买决策快速

论文/报告里怎么写(规范句式)

以下句式可直接填入论文方法部分和结果部分,已对齐 APA 7th 中文学术规范:

方法部分(4.x 数据分析方法)

"本研究采用 K-means 聚类分析对消费者购物行为进行细分。分析前对全部变量进行 Z-score 标准化处理,以消除量纲差异对距离计算的影响。最优聚类数通过肘部法则(SSE 折线图)和平均轮廓系数共同确定,两种方法均指向 K = 4。聚类分析在 R 环境下运行,采用 stats::kmeans() 函数,设置 nstart = 25 以规避随机初始中心带来的局部最优问题(Hartigan & Wong, 1979)。"

结果部分(5.x 聚类分析结果)

"K-means 聚类分析将 350 名消费者划分为 4 类(见表 1)。肘部法则显示 K=4 处 SSE 下降斜率出现明显拐点(K=3 至 K=4 降幅为 233.4,K=4 至 K=5 降幅仅 136.4),平均轮廓系数在 K=4 时达到最大值(0.463),两项指标一致支持选择 4 个聚类。

单因素方差分析验证了聚类方案的区分效度:6 个聚类变量在 4 类之间均存在极显著差异(所有 F > 58, p < .001),效应量 eta² 介于 .336 至 .514 之间,均达到 Cohen(1988)定义的大效应标准(eta² >= .14),表明各聚类在构成变量上具有高度内聚性与外部分离性。

根据聚类中心特征,4 类消费者依次被命名为「高消费忠诚型」(n = 82, 23.4%)、「低频价敏型」(n = 97, 27.7%)、「高犹豫谨慎型」(n = 71, 20.3%)和「高频轻量型」(n = 100, 28.6%),各类画像描述见表 2。"

参考文献格式(APA 7th)

Hartigan, J. A., & Wong, M. A. (1979). Algorithm AS 136: A K-means clustering algorithm. Journal of the Royal Statistical Society, Series C (Applied Statistics), 28(1), 100-108. https://doi.org/10.2307/2346830


常见问题 FAQ

Q1:K 值怎么确定?肘部法则和轮廓系数哪个更可靠?

两种方法各有侧重,建议联合使用:

  • 肘部法则直观但主观,拐点有时不明显(SSE 曲线很平缓)。
  • 轮廓系数更客观,直接衡量聚类质量(内聚性/分离性之比),更受学术期刊认可。
  • 若两者一致,直接采用;若不一致,优先参考轮廓系数,同时结合业务/学术解释合理性决定。

ChatSRS 会同时输出两种诊断图,并给出综合建议,无需手动判断。


Q2:变量要不要标准化?量纲一样还需要标准化吗?

  • 量纲差异大时(如收入单位"元" vs 年龄单位"岁"),必须标准化,否则取值范围大的变量会主导距离计算,导致聚类结果失真。
  • 量纲相同且业务含义可比时(如均是 1-7 分 Likert 题),可以不标准化,但标准化通常也无害。
  • ChatSRS 默认对所有变量做 Z-score 标准化(均值=0,标准差=1),论文报告时需注明"所有变量已标准化"。

Q3:含定类变量(如性别、地区)能用 K-means 聚类吗?

标准 K-means 不能直接处理定类变量,因为欧式距离对类别型数据无意义。解决方案:

  • 混合型聚类(K-prototype):专为连续变量 + 定类变量混合场景设计,在 ChatSRS 中告知"包含定类变量"即可自动切换。
  • 哑变量编码(One-Hot):将定类变量转为 0/1 编码后参与 K-means,适用于定类变量类别数不多的情形,但高维 One-Hot 可能引入维度灾难。
  • 建议:若定类变量是核心细分维度,优先用 K-prototype;若只是辅助背景变量,可先用连续变量聚类,再用定类变量做聚类结果的交叉描述。

Q4:K-means 和层次聚类(Hierarchical Clustering)该选哪个?

对比维度K-means层次聚类
样本量适用范围大样本(n > 200)高效小样本(n < 500)更合适
需要预设 K 值是(需指定 K)否(通过树状图决定)
结果稳定性受随机初始中心影响(多次运行取优)确定性算法,结果唯一
学术使用频率高(尤其市场/消费者研究)中(生物信息学、心理学常用)
典型用途已知大致分群数、大样本探索性细分不确定分群数、小样本探索性分析

实践建议:先用层次聚类的树状图(dendrogram)辅助判断合理 K 值,再用 K-means 做正式聚类,这是学术论文中常见的两步策略,ChatSRS 可一句话触发此流程。


Q5:聚类结果如何验证?审稿人会问什么?

审稿人通常关注以下几点:

  1. 聚类数确定依据:肘部法则和/或轮廓系数,两者都报最佳。
  2. 区分效度:ANOVA 检验各变量在聚类间是否显著不同(F 值 + p 值 + 效应量 eta²)。
  3. 稳定性:是否做了多次运行(nstart >= 20)取全局最优,避免局部最优解。
  4. 标准化处理:是否说明了对变量做了标准化及原因。
  5. 后续效标效度:用聚类结果做 ANOVA(如比较各群购物意愿),验证聚类对外部变量的预测区分能力。

ChatSRS 输出的结果报告已涵盖上述全部要点。


Q6:样本量多少才够做 K-means?

通常建议每类至少 30 个样本,即:若你预期 K=4,总样本量至少 120 以上。更稳健的标准是总样本量 >= 5K × 变量数。本文案例 350 人、6 变量、4 类,满足 350 >= 5×4×6 = 120,分析合理。若样本量不足,考虑先做层次聚类(对小样本更稳健)。


小结

聚类分析的难点从来不是运行算法本身,而是三件事:确定 K 值、标准化决策、结果的学术规范表达。ChatSRS 通过一句自然语言指令,自动完成标准化 → 肘部法则/轮廓系数联合选 K → K-means 聚类 → ANOVA 区分效度验证 → 特征命名 → APA 文字分析的完整链路,把原本 2 小时的工作压缩到 1 分钟。


相关阅读


本文首发于 ChatSRS 官方博客。如有问题或反馈,欢迎在 ChatSRS 站内 [用户中心 -> 帮助与反馈] 联系我们。