在多元相关分析中,简单相关系数可能不能够真实的反映出变量X和Y之间的相关性,因为变量之间的关系很复杂,它们可能受到不止一个变量的影响。这个时候偏相关系数是一个更好的选择。
偏相关系数是在排除了其他变量的影响下计算变量间的相关系数。假设我们需要计算X和Y之间的相关性,Z代表其他所有的变量,X和Y的偏相关系数可以认为是X和Z线性回归得到的残差Rx与Y和Z线性回归得到的残差Ry之间的简单相关系数,即pearson相关系数。
定义:corr_partial(x:array,y:array,z:array,type:Integer);
说明:偏相关系数,返回x和y在控制变量z下的偏相关系数,行为样本,列为指标
参数:
x:变量一,二维实数数组
y:变量二,二维实数数组
z:控制变量,二维实数数组
type: 1:pearson偏相关;2:Spearman偏相关
tail:假设检验的三种类型,字符串,取值为both、left和right,缺省是只输出相关系数
例
x := rand(100,3);
y := rand(100,2);
z := rand(100,2);
ret := corr_partial(x,y,z,2);
返回偏相关系数结果:array((-0.0862,0.2046),(-0.1844,0.00),(0.0736,0.0411))
ret := corr_partial(x,y,z,2,'both');
ret['coef']:偏相关系数
ret['pval']:检验偏相关系数是否显著的P值
ret['df']:自由度