相关系数矩阵
相关系数矩阵反映的是两两变量之间的相关程度,一般是计算皮尔逊相关系数。如下表,有x1,x2,x3,x4四个变量,计算其相关系数矩阵,评估变量相关性。
x1 | x2 | x3 | x4 | |
1 | 7 | 26 | 6 | 60 |
2 | 1 | 29 | 15 | 52 |
3 | 11 | 56 | 8 | 20 |
4 | 11 | 31 | 8 | 47 |
5 | 7 | 52 | 6 | 33 |
6 | 11 | 55 | 9 | 22 |
SPL 代码如下:
A | B | |
1 | [[7,26,6,60],[1,29,15,52],[11,56,8,20],[11,31,8,47],[7,52,6,33],[11,55,9,22],[3,71,17,6],[1,31,22,44],[2,54,18,22],[21,47,4,26],[1,40,23,34],[11,66,9,12],[10,68,8,12]] | [[x1,x2,x3,x4]] |
2 | =transpose(A1) | |
3 | for A2 | =A2.(pearson(A3,~)) |
4 | >B1=B1|[B3] | |
5 | =transpose(B1) | |
6 | =[B1(1).insert(1,"")]|A5 |
A1 输入样本数据
B1 定义一个序列,保存计算结果
A2 将A1转置
A3:B4 循环A2, 计算变量两两之间的相关系数,结果存入B1
A5 转置B1
A6加入变量名称
上述代码执行完毕后,可生成相关系数矩阵如下表:
x1 | x2 | x3 | x4 | |
x1 | 1 | 0.228579 | -0.82413 | -0.24545 |
x2 | 0.228579 | 1 | -0.13924 | -0.97295 |
x3 | -0.82413 | -0.13924 | 1 | 0.029537 |
x4 | -0.24545 | -0.97295 | 0.029537 | 1 |
除了上述方法,相关系数矩阵还可以通过计算标准化后的协方差矩阵来获得。
A | |
1 | [[7,26,6,60],[1,29,15,52],[11,56,8,20],[11,31,8,47],[7,52,6,33],[11,55,9,22],[3,71,17,6],[1,31,22,44],[2,54,18,22],[21,47,4,26],[1,40,23,34],[11,66,9,12],[10,68,8,12]] |
2 | =mnorm@s(A1,1) |
3 | =covm(A2) |
A2 将A1按列标准化,标准化后中心值为0,标准差为 1。@表示采用统计学计算除以n-1
A3 计算标准化后协方差矩阵,结果即为相关系数矩阵。