相关系数矩阵

 

相关系数矩阵反映的是两两变量之间的相关程度,一般是计算皮尔逊相关系数。如下表,有x1x2x3x4四个变量,计算其相关系数矩阵,评估变量相关性。


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 计算标准化后协方差矩阵,结果即为相关系数矩阵。

..