4

我想对地理数据进行聚类,以对我所在地区的景观类型进行分类。

我的数据由规则网格的每个字段的五个变量(温度、温度幅度、降水、海拔和土壤类型)组成。我有超过 100 万个字段(=数据框中的行)。

其中四个变量是数字,土壤类型是描述为数字的分类变量。(数值数据已经标准化。)我决定计算 Gower 距离相异矩阵,并在这个矩阵上执行 PCA 和层次聚类。但是,数据太大了。

   SOIL  PREC     TEMP     ALT      AMP
0  6     1.000    1.146    0.157   -0.579
1  6     0.948    1.224    0.154   -0.579
2  5     1.000    1.146    0.201   -0.662
3  6     1.078    1.093    0.177   -0.620
4  6     1.000    1.146    0.182   -0.620
5  6     1.000    1.146    0.186   -0.599

我不想采样,因为变量是渐变的。我试图计算频率并对较小的数据执行高尔距离,但它仍然太大。

我想我可能(1)手动分块大数据集,(2)到每个块矩阵添加两个额外的行,其中变量的最大值和最小值作为距离分析的每个变量范围的“描述”,(3)使用gower.dist函数计算每个块的相异矩阵,(4)删除额外的行和(5)将所有块相异矩阵合并为一个大相异矩阵。

您认为这是一种正确且有效的方式吗?您对如何处理此问题有任何其他建议吗?

在相异矩阵上执行 PCA 是否正确?

4

0 回答 0