斯皮尔曼相关(spearman)系数法

       在分析指标与指标、指标与研究对象的影响程度时,很多时候会用到相关系数法,下面介绍一下斯皮尔曼相关系数法。

        斯皮尔曼等级相关是根据等级资料研究两个变量间相关关系的方法。它是依据两列成对等级的各对等级数之差来进行计算的,斯皮尔曼等级相关对数据条件的要求没有积差相关系数严格,只要两个变量的观测值是成对的等级评定资料,或者是由连续变量观测资料转化得到的等级资料,不论两个变量的总体分布形态、样本容量的大小如何,都可以用斯皮尔曼等级相关来进行研究。如果两个变量之间的相关系数完全相同,斯皮尔曼相关系数就是+1或者-1,换句话说,相关系数距离+1或者-1越近表明两个变量之间的相关性就越强。

        斯皮尔曼相关系数可由下式得出:

                                           

其中n为样本容量,p为相关系数,x,y为两个变量 中对应的元素。 

在实际应用或是具体题目中,变量间的连结是无关紧要的,将观测的两个变量的对应元素相减得到一个差值d,则还可以将上述公式转化为:

                                  

适用范围:只需两个变量的观测值是成对的等级评定数据,或者是由连续变量观测数据转化得到的等级数据,不论两个变量的总体分布形态、样本容量的大小如何,都可以用斯皮尔曼等级相关系数来进行研究。

下面我们利用matlab中的corr函数来求解,具体代码如下:

①当X与Y是构成一个矩阵时,关于两者相关系数程序格式为

corr(X,Y,'type','Spearman')

②当X是由多个指标数据构成的矩阵时,关于指标间相关系数程序格式为

corr(X,'type','Spearman')

clc;clear
x=[2 4 6 23 7 8 22 44 47 12]';
y=[3 36 97 22 46 11 9 54 32 21]';
z=corr(x,y,'type','Spearman')

 运行结果为z=0.1030,注意其中的x,y必须为列向量。

A=[1 2 3 4 0 6 7 8 9
    3 5 7 8 9 11 13 15 16
    6 5 4 8 9 12 13 15 17]';
B=corr(A,'type','Spearman')
运行结果:B =    1.0000    0.8333    0.7667    0.8333    1.0000    0.9333    0.7667    0.9333    1.0000

        其中,A也必须为列向量,结果分析:B中第一行第一列是第一个指标和A中第一行数据进行相关系数的运算得出,也就是说A中第一行和第一行进行运算,所以结果为1,相关性完全一致。第二行第一列表示第二个指标和A中第一行数据进行相关系数运算,结果为0.8333          

 

 

  • 5
    点赞
  • 104
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值