person相关系数及spearman相关系数
以“分析八年级男生体测数据”为例
一.person相关系数
基础知识(概率论与数理统计及matlab):
总体均值( E ( x ) E ( y ) E(x) E(y) E(x)E(y)),总体协方差( C o v ( X , Y ) Cov(X,Y) Cov(X,Y)),总体person相关系数( ρ ( x , y ) \rho(x,y) ρ(x,y)),样本协方差,样本person相关系数。
注意:
- 如果两个变量本身就是相关性的关系,那么person相关系数绝对值大的相关性强,小的相关性弱。
- 在不确定两个是什么关系的情况下,person相关系数不能说明两个变量之间的相关性
- 所以在使用person相关系数之前必须先画出散点图来判断两个变量是否具有相关性。
1 . 首先对数据进行描述性统计:
(1)matlab:
Min=min(test);
Max=max(test);
Mean=mean(test);
Median=median(test);%中位数
Skewness=skewness(test);%偏度
Kurtosis=kurtosis(test);%峰度
Std=std(test);
result=[Min;Max;Mean;Median;Skewness;Kurtosis;Std]%矩阵的拼接
(2)SPSS
(3)Excel自带的描述统计功能
2 .画出散点图
可以用SPSS或者matlab,此处用SPSS比较方便。
由于数据太多,看着并不直观。但显然大部分数据不具有线性相关性,此处我们假设该数据具有线性相关性。
3 .person相关系数的计算
在matlab中使用corrcoef函数
使用方法:R=corrcoef(A)%矩阵A :R=corrcoef(A,B)%向量A,B
拓展:美化相关系数表(一般的数据表也适用)
(1).不同背景色来强调数值的大小。Excel
4.检验数据是否是正态分布(对相关系数进行假设检验以判断相关性的前提)
(1)JB检验
适用于大样本n>30
原理:设有某随机变量 X i {Xi} Xi,其偏度为S,峰度为K,构造统计量JB(与S,K有关)。若数据为正态分布,则JB统计量在大样本的情况下符合自由度为2的卡方分布。
步骤:H0:该随机变量服从正态分布。H1:该变量不服从正态分布。
然后计算该组变量偏度和峰度,得到其统计量JB*,并计算其对应的P值,比较P值与0.05(一般情况下置信水平取95%)。P>0.05,无法拒绝原假设,即随机变量符合正态分布;P<0.05,在95%的置信水平下,(发生了小概率事件)可以拒绝原假设。
matlab语法:[h,p]=jbtest(x,alpha)%alpha为显著水平,一般取0.05,x为要检验的随机变量,且x只能是向量。h=1代表可以拒绝原假设,即变量x不是正态分布;h=0代表不能拒绝原假设,即变量x符合正态分布。
n=size(test,2);
hh=ones(1,n);
pp=ones(1,n);
for i=1:n
[hh(1,i),pp(1,i)]=jbtest(test(:,i),0.05);
end
[hh;pp]
(2).Shapiro-wilk检验
适用于小样本 3 < = n <