斯皮尔曼spearman相关系数
1、第一中斯皮尔曼spearman相关系数定义:
X和Y为两组数据,其斯皮尔曼(等级)相关系数:
(其中,
为
和
之间的等级差)
(一个数的等级,就是将它所在的一列数按照从小到大排序后,这个数所在的位置)
可以证明:位于-1和1之间。
(注意:如果有的数值相同,则将它们所在的位置取算术平均。)
根据公式:可得:
X和Y的斯皮尔曼相关系数:
2、另一种斯皮尔曼spearman相关系数的定义
斯皮尔曼相关系数被定义成等级之间的皮尔逊相关系数。
还以这张图为例:
matlab中代码为:
%% MATLAB求解皮尔逊相关系数
RX = [2 5 3 4 1]
RY = [1 4.5 3 4.5 2]
R = corrcoef(RX,RY)
x = [ 3 8 4 7 2]' %一定要是列向量哦,一撇'表示求转置
Y =[ 5 10 9 10 6]'
coeff = corr(x , Y , 'type' , 'Spearman ' )
两种用法:(1) corr(X , Y , 'type' , 'Spearman')(这里的X和Y必须是列向量) (2) corr(X , 'type', 'Spearman')
斯皮尔曼相关系数的假设检验(分为小样本和大样本两种情况)
小样本情况:即n ≤30时,直接查临界值表即可。
(这里的)
大样本情况下,统计量
我们计算检验值,并求出对应的p值与0.05相比即可。
斯皮尔曼相关系数和皮尔逊相关系数选择:
1、连续数据,正态分布,线性关系,用pearson相关系数是最恰当,当然用spearman相关系数也可以,就是效率没有pearson相关系数高。
2、上述任一条件不满足,就用spearman相关系数,不能用pearson相关系数。
3、两个定序数据之间也用spearman相关系数,不能用pearson相关系数。
( 定序数据是指仅仅反映观测对象等级、顺序关系的数据,是由定序尺度计量形成的,表现为类别,可以进行排序,属于品质数据。例如:优、良、差;我们可以用1表示差、2表示良、3表示优,但请注意,用2除以1得出的2并不代表任何含义。定序数据最重要的意义代表了一组数据中的某种逻辑顺序。)
注:斯皮尔曼相关系数的适用条件比皮尔逊相关系数要广,只要数据满足单调关系。(例如线性函数、指数函数、对数函数等)就能够使用。