计算偏相关系数和复相关系数

  1. 根据4个要素的48个样本数据,计算得到的简单相关系数如下,试计算各级偏相关系数和复相关系数,并对其显著性进行检验。

1.	import math  
2.	import numpy as np  
3.	import pandas as pd  
4.	import pingouin as pg  
5.	  
6.	a=np.array([[1,0.9954,0.9994,0.9989],  
7.	           [0.9954,1,0.9926,0.9923],  
8.	           [0.9904,0.9926,1,0.9977],  
9.	           [0.9989,0.9923,0.9977,1]],dtype=float)  
10.	  
11.	r231=(a[1,2]-a[0,1]*a[0,2])/((1-a[0,1]**2)*(1-a[0,2]**2))**0.5  
12.	  
13.	r241=(a[1,3]-a[0,1]*a[0,3])/((1-a[0,1]**2)*(1-a[0,3]**2))**0.5  
14.	  
15.	r341=(a[2,3]-a[0,2]*a[0,3])/((1-a[0,2]**2)*(1-a[0,3]**2))**0.5  
16.	  
17.	r132=(a[0,2]-a[0,1]*a[1,2])/((1-a[0,1]**2)*(1-a[1,2]**2))**0.5  
18.	  
19.	r142=(a[0,3]-a[0,1]*a[1,3])/((1-a[0,1]**2)*(1-a[1,3]**2))**0.5  
20.	  
21.	r342=(a[2,3]-a[1,2]*a[1,3])/((1-a[1,2]**2)*(1-a[1,3]**2))**0.5  
22.	  
23.	r123=(a[0,1]-a[0,2]*a[1,2])/((1-a[0,2]**2)*(1-a[1,2]**2))**0.5  
24.	  
25.	r143=(a[0,3]-a[0,2]*a[2,3])/((1-a[0,2]**2)*(1-a[2,3]**2))**0.5  
26.	  
27.	r243=(a[1,3]-a[1,2]*a[2,3])/((1-a[1,2]**2)*(1-a[2,3]**2))**0.5  
28.	  
29.	r124=(a[0,1]-a[0,3]*a[1,3])/((1-a[0,3]**2)*(1-a[1,3]**2))**0.5  
30.	  
31.	r134=(a[0,2]-a[0,3]*a[2,3])/((1-a[0,3]**2)*(1-a[2,3]**2))**0.5  
32.	  
33.	r234=(a[1,2]-a[1,3]*a[2,3])/((1-a[1,3]**2)*(1-a[2,3]**2))**0.5  
34.	  
35.	print(r231)  
36.	print(r241)  
37.	print(r341)  
38.	print(r132)  
39.	print(r142)  
40.	print(r342)  
41.	print(r123)  
42.	print(r134)    
43.	print(r234)

1.	t231=(r231/((1-r231**2)**0.5))*(45**0.5)  
2.	  
3.	t241=(r241/((1-r241**2)**0.5))*(45**0.5)  
4.	  
5.	t341=(r341/((1-r341**2)**0.5))*(45**0.5)  
6.	  
7.	t132=(r143/((1-r132**2)**0.5))*(45**0.5)  
8.	  
9.	t142=(r231/((1-r142**2)**0.5))*(45**0.5)  
10.	  
11.	t342=(r342/((1-r342**2)**0.5))*(45**0.5)  
12.	  
13.	t123=(r123/((1-r123**2)**0.5))*(45**0.5)  
14.	  
15.	t134=(r134/((1-r134**2)**0.5))*(45**0.5)  
16.	  
17.	t234=(r234/((1-r234**2)**0.5))*(45**0.5)  
18.	  
19.	print(t231)  
20.	print(t241)  
21.	print(t341)  
22.	print(t132)  
23.	print(t142)  
24.	print(t342)  
25.	print(t123)  
26.	print(t134)  
27.	print(t234)

1.	r1234=(r123-r143*r243)/((1-r143**2)*(1-r243**2))**0.5  
2.	  
3.	r1324=(r132-r142*r342)/((1-r142**2)*(1-r342**2))**0.5  
4.	  
5.	r1423=(r142-r132*r342)/((1-r132**2)*(1-r342**2))**0.5  
6.	  
7.	r2314=(r231-r241*r341)/((1-r241**2)*(1-r341**2))**0.5  
8.	  
9.	r2413=(r241-r231*r341)/((1-r231**2)*(1-r341**2))**0.5  
10.	  
11.	r3412=(r341-r231*r241)/((1-r231**2)*(1-r241**2))**0.5  
12.	  
13.	print(r1234)  
14.	print(r1324)  
15.	print(r1423)  
16.	print(r2314)  
17.	print(r2413)  
18.	print(r3412)
#二级偏相关系数的显著性检验,也采用的是T检验,代码实现(python):
1.	t1234=(r1234/((1-r1234**2)**0.5))*(45**0.5)  
2.	  
3.	t1324=(r1324/((1-r1324**2)**0.5))*(45**0.5)  
4.	  
5.	t1423=(r1423/((1-r1423**2)**0.5))*(45**0.5)  
6.	  
7.	t2314=(r2314/((1-r2314**2)**0.5))*(45**0.5)  
8.	  
9.	t2413=(r2413/((1-r2413**2)**0.5))*(45**0.5)  
10.	  
11.	t3412=(r3412/((1-r3412**2)**0.5))*(45**0.5)  
12.	  
13.	print(t1234)  
14.	print(t1324)  
15.	print(t1423)  
16.	print(t2314)  
17.	print(t2413)  
18.	print(t3412)

1.	ry1234=(1-(1-0.9954**2)*(1-r132**2)*(1-r1423**2))  
2.	  
3.	ry2134=(1-(1-0.9926**2)*(1-r243**2)*(1-r3412**2))  
4.	  
5.	ry3124=(1-(1-0.9977**2)*(1-r341**2)*(1-r2413**2))  
6.	  
7.	ry4123=(1-(1-0.9989**2)*(1-r241**2)*(1-r1234**2))  
8.	print(ry1234)  
9.	print(ry2134)  
10.	print(ry3124)  
11.	print(ry4123) 

1.	F1234=(ry1234**2/(1-ry1234**2))*(44/3)  
2.	F2134=(ry2134**2/(1-ry2134**2))*(44/3)  
3.	F3124=(ry3124**2/(1-ry3124**2))*(44/3)  
4.	F4123=(ry4123**2/(1-ry4123**2))*(44/3)  
5.	  
6.	print(F1234)  
7.	print(F2134)  
8.	print(F3124)  
9.	print(F4123) 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值