为了降维,我对 163 个变量(基于 1500 个案例)的相关矩阵R进行了特征分析(使用 Jacobi 迭代)。附上碎石图。
正如预期的那样,所有特征值的总和(到小数点后 6 位)等于变量的数量。然而,最后 54 个特征值是负的,累积解释方差在下降到 100% 之前达到 125%。这里发生了什么,使用前 15 个左右的特征向量来计算分数和社区仍然有意义吗?
集合中缺少数据,因此使用了相关系数的稳健计算:
将 sums and n 设置为 0
for i := 1 to Cases do
if ((IsNaN(x[i]) or (IsNaN(y[i] ))
然后什么也不做
将添加到它们各自的总和和 inc(n)
这个想法是完全使用可用信息而不通过插补发明任何东西(在这种状态下,通过乘法计算分数的估算外,我没有其他办法。