混合类型两步聚类
二阶聚类
先把行压成预簇,再对预簇做层次合并,让定量房价与房屋类型、装修情况走同一套对数似然距离,并由 BIC 建议切几枝。
这篇能回答什么
二阶聚类(SPSS 所称 TwoStep)回答的是「定量和定类混在一张客群表里,怎样先压缩再合并,并让信息准则建议切几刀」。第一步用聚类特征树(CF tree)把相近行装进预簇,避免对全部 n 建完整距离矩阵;第二步把预簇当成「超级点」做层次合并。距离对连续列用方差、对定类列用多项概率,合在一条对数似然里,因此房屋类型、装修情况可以和面积、单价坐在同一套角色里。
适合:会员类型 + 消费额、房屋类型 + 面积/单价 这类混合分群。本教学在综合评价表上勾选面积(平米)、单价(元/平米)、总价(万元) 与房屋类型、装修情况。完整个案 333,占用 A 43、B 51、C 239。C 独自 71.77%,是典型的「一枝很大、两枝是少数剖面」。
什么时候不该用
只有定量、又想亲手转完整棵叶子树,用分层聚类,不要为了「高级」而上两步。只要球形中心、没有定类,K-Means 聚类分析更直接。已经有组别标签时,主分析是线性判别。房源ID、小区名称仍是标识,不能当特征。
如何选择方法
先数类型。定量 + 房屋类型 / 装修情况,并且 n 大到不想画满叶树 → 二阶聚类。全是定量、n 小、必须核对每一刀合并 → 分层聚类。全是定量、只要 K 个中心 → K-Means。密度口袋和噪声 → 密度聚类。
二阶聚类:定量与/或定类特征;预簇 + 层次合并;BIC/AIC 可建议枝数。
分层聚类:对原始行建树,通常要求定量,完整树叶。
K-Means:仅定量,预设 K,输出中心。
密度聚类:仅定量,参数是 ε 与 MinPts,不是 BIC。
输入、输出与限制
输入
特征可以是定量或定类。最大簇数或「自动」是超参数。列表删除后,房屋类型或装修情况缺失的行与定量缺失的行一样不进 CF tree。
聚类特征:最少 2 个;定量与定类可混选,合计通常不超过 50。
最大簇数 / 自动:自动时由 BIC 或 AIC 在 2 到上限之间挑。
输出
教学表仍是项目、类别、统计量、取值四列。A / B / C 是最终簇占用。BIC 曲线、预簇个数若出现在工作台,属于图或旁注,不要自行给本表加「BIC」列。本切面合计 333,三类加总与合计一致。
产品限制
CF tree 的叶容量与枝因子影响预簇粒度,进而改写第二步的树;重复运行应固定这些内部上限。
自动簇数是信息准则的建议,不是「真实客群数」。
定类水平极多(小区名称)会把对数似然打散,应排除标识列。
城市、区域若水平很少可以试用,但本教学优先房屋类型与装修情况。
与 SPSS TwoStep 对格子时,必须对齐标准化、噪声处理开关和准则(BIC 还是 AIC)。
案例
研究问题。 综合评价表同时有面积、单价、总价和房屋类型、装修情况。研究者希望得到可运营的少数客群,并让准则建议是否真的需要三枝,而不是对六百片叶子手动画满树。
教学表示例工作表为「Sheet1」。混类型完整个案 333。占用:A 43(12.91%),B 51(15.32%),C 239(71.77%)。C 超过七成,A、B 是两块较小的剖面。下载后:定量勾选面积(平米)、单价(元/平米)、总价(万元);定类勾选房屋类型、装修情况。不要勾选房源ID、小区名称、挂牌日期。
在 StatsX 中操作
步骤 1 · 上传表格
打开工作台,将 Excel / CSV / JSON 拖入上传区。本案例使用综合评价 xlsx,确认工作表为「Sheet1」。单文件不超过 20 MB。
步骤 2 · 查看画像与质量
确认面积(平米)、单价(元/平米)、总价(万元) 为定量;房屋类型、装修情况为低基数定类。小区名称唯一值过多,当作标识丢掉。楼层、总楼层可加,但本页复现占用时先保持五列角色。
步骤 3 · 选择「二阶聚类」
在算法目录搜索「二阶」或「TwoStep」,点选二阶聚类。
步骤 4 · 指定混合特征并运行
聚类特征同时勾选三列定量与房屋类型、装修情况。簇数先选自动(或上限 3)以便对照本页三类占用。点击运行分析。
步骤 5 · 阅读结果
先看合计是否为 333 左右的完整个案,再读 C 是否仍过七成。BIC 若建议 2,应比较把 A+B 合并后的可解释性,而不是强制留三枝。图上的预簇不是最终客群。




如何阅读输出
下表是最终簇占用,不是预簇清单。合计 N=333:A 43(12.91%),B 51(15.32%),C 239(71.77%)。C 占 71.77%,说明第二步把绝大多数预簇并进同一枝;A、B 人数接近,像两块需要单独运营的少数剖面。表中没有 BIC 值,也没有房屋类型众数——那些若存在,在别的面板,不要给本表加列。
| 项目 | 类别 | 统计量 | 取值 |
|---|---|---|---|
| 二阶聚类 | 类别 A | 频数 | 43 |
| 二阶聚类 | 类别 B | 频数 | 51 |
| 二阶聚类 | 类别 C | 频数 | 239 |
| 二阶聚类 | 合计 | 有效样本 N | 333 |
| 二阶聚类 | 类别 A | 占比(%) | 12.91 |
| 二阶聚类 | 类别 B | 占比(%) | 15.32 |
| 二阶聚类 | 类别 C | 占比(%) | 71.77 |
左右滑动可查看完整表格
教学示例表在 StatsX 工作台中的计算结果口径。



混类型列表删除比「只删定量」更狠:房屋类型或装修空缺的行也会退出,故 N=333 不必等于分层聚类那页的 212,也不必等于密度聚类的 265。三个方法的分母本来就不是同一批完整个案。
阅读顺序:混类型有效 N → 自动簇数与占用 → C 是否大到失去运营意义 → 再打开各簇的类型构成(工作台其他视图)核对「豪装 / 一室」是否集中在 A 或 B。BIC 最小不等于市场部必须开三个运营组。写方法时报告特征清单、准则种类、最大簇数上限和这张占用表。
理论与公式
TwoStep 对预簇 j 的对数似然把连续维的正态密度与定类维的多项概率乘在一起。合并预簇 U、V 的距离取似然下降:
其中 ξ 是该预簇在当前参数下的对数似然贡献(Chiu 等, 2001)。第二步在预簇上做层次合并。自动簇数常最小化 BIC:
本例 N=333,准则若停在 k=3,占用即为 (43,51,239)。q(k) 随连续维方差参数和定类水平数增加,所以乱加「城市×区域」会把准则推向更多碎簇。预簇不是最终答案:同一行在第一步被装进哪个叶,取决于 CF tree 的插入顺序与叶容量。
注意事项
C 占 71.77% 时,准确率式的「分得开」没有意义——多数行本来就在同一枝。
自动 k 随准则和上限而变,论文必须写 BIC 还是 AIC。
小区名称、房源ID 会把多项维炸开,必须排除。
第一步丢掉的细节回不来:两套房若早早装进同一预簇,第二步无法再拆开它们。
与分层聚类的 N 不同,不要用另一页的 212 来重算本表占比。
混合距离依赖分布假设,极端总价仍会拉动连续维的方差项。
常见问题
参考文献
Chiu, T., Fang, D., Chen, J., Wang, Y., Jeris, C. A robust and scalable clustering algorithm for mixed type attributes in large database environment[C]//KDD. 2001.
IBM. SPSS Statistics TwoStep Cluster Algorithms. IBM Knowledge Center.
张文彤, 董伟. SPSS统计分析高级教程[M]. 高等教育出版社.