陈鼎 姜雨昂
摘要:在调查、医学等研究中,有序变量的相关性都有所涉及,并且合理使用相關系数的计算方法得出正确的结论显得尤为重要。文章介绍了有序变量相关系数的计算公式,通过R软件编写函数计算相关系数及其置信区间、p值,同时通过举例说明有序变量相关性在教学研究、医学研究、市场调查中的应用,总结了相关系数之间的差异以及适用范围。
关键词:非参数统计;相关性;有序变量;R软件
中图法分类号:0212文献标识码:A
Correlation of ordinal variables and its application by R software
CHEN Ding,JIANG Yuang
(School of Mathematics and Statistics,Suzhou University,Suzhou 234000,China)
Abstract:In various researches such as investigation and medicine, the correlation of ordinal variables is involved, and it is particularly important to use the calculation method of the correlation coefficient reasonably to draw the correct conclusion. This paper introduces the calculation formula of the correlation coefficient of ordinal variables, and uses R software to write functions to calculate the correlation coefficient, its confidence interval, and p value. Finally, through the application of the correlation of ordinal variables in teaching research,medical research,and market research,this paper explains the differences between the correlation coefficients and the scope of application.
Key words: nonparametric statistics, correlation, ordered variable, R software
在经济、金融、医学、气象等各类科学研究中,研究两个变量是否相互影响一直是人们关注的首要问题。研究变量间的相互影响,不仅关心两个变量是否存在相关,更关心两个变量间的相关强度。目前,常用的方法是连续变量采用散点图或折线图等图表法直接观察,或者使用 Pearson 相关系数、Spearman 相关系数等衡量相关关系[1~2],而名义变量的相关关系采用列联表分析和独立性卡方检验进行定性分析,或者采用φ系数、列联系数、Cramer s V 系数等进行定量分析[3]。在问卷调查、疾病成因和医学卫生等研究领域,更关注的是定序名义变量间的相关程度[4~6],而大部分情况都是使用列联表分析等方法去解决问题,这往往忽略有序变量的顺序关系,甚至会得出错误的结论[7]。鉴于此,本文针对有序变量相关性度量,重点介绍了几种常用的有序变量相关系数的计算方法及性质,并使用免费开源的 R 软件编写函数实现相关系数的计算。
1有序变量的相关性
1.1有序变量的相关系数
假设 X 和 Y 都是有序变量,分别有 r 个有序水平A1,A2,…,Ar 和 c 个有序水平 B1,B2,…,Bc ,而且观测数据( Xi ,Yi ),i =1,2,…,n 能放入 r × c 的列联表(表1)。
由于变量数据具有特殊性,常用 Kendall τb 和Kendall τc ,Goodman?Kruskal,s γ,Somers, d 等系数衡量两个有序变量间相关性。记
,则有序变量间的相关系数可表示为如下形式:
(1)Kendall τ b 相关系数:
其渐进均方差为:
其中,vij=RiDr+CjDc 。
(2)Kendall τc 相关系数:
其渐进均方差为:
其中,q=min( r,c)。
(3)Goodman?Kruskal,s γ相关系数:
其渐进均方差为:
(4)Somers, d(C | R)相关系数:
其渐进均方差为:
(5)Somers, d(R | C)相关系数:
其渐进均方差为:
(6)Somers, d 相关系数:
其渐进均方差为:
Kendall τb 和 Kendall τc, Goodman?Kruskals γ, Somers d(C | R),Somers d(R | C)以及 Somers d 的取值范围都介于?1 ~ 1 之间,其中系数的符号代表正相关和负相关,系数的绝对值大小代表相关程度,绝对值接近1时,相关性越强;绝对值接近0时,相关性越弱。Kendall τ b 和 Kendall τc ,Goodman?Kruskal,s γ,Somers, d 中变量的位置是对称的,而 Somers, d ( C | R),Somers, d( R | C)是非对称的,可以度量自变量对因变量的影响。
1.2有序变量相关性 R 软件的实现
将有序变量的相关系数、区间估计和检验 p 值用 R 语言编写函数 Ordinal,具体程序如下:
Ordinal=function( x)
{ n1=nrow( x)
n2=ncol( x)
C=D=matrix(NA,nrow=n1,ncol=n2)
for (i in 1:n1)
{ for (j in 1:n2)
{ C[i,j]=sum(( row( x )>i)?( col( x )>j)?x )+ sum(( row( x)
D[i,j]=sum (( row ( x )>i)?( col( x )
}
P=sum( x ?C)
Q=sum( x ?D)
n=sum( x)
Dc=n^2?sum(( apply( x,2,sum))^2)
Dr=n^2?sum(( apply( x,1,sum))^2)
Ri=matrix( apply( x,1,sum),n1,n2)
Cj=matrix( apply( x,2,sum),byrow=T,n1,n2)
V=Ri ?Dr+Cj ?Dc
Kendall taub=( P?Q)/sqrt ( Dc ? Dr ) #计算
Kendall taub 系数
ASE taub=1/(Dc ?Dr)? sqrt ( sum ( x ?(2? sqrt
(Dc ?Dr)?(C?D)+Kendall taub ?V)^2) -n^3?Kendall taub^2?(Dr+Dc)^2)
q=min( nrow( x),ncol( x))
Kendall_tauc=q ?(P?Q)/( n^2?( q?1)) #计
算 Kendall tauc 系数
ASE_tauc=2?q/(( q?1)?n^2)? sqrt ( sum ( x ?(C?D)^2)?(P?Q)^2/n)
Goodman gamma =( P ?Q)/( P +Q) #计算
Goodman gamma 系数
ASE Goodman=4/(P+Q)^2? sqrt( sum( x ?(Q ? C ?P ?D)^2))
Somer d=2?(P?Q)/(Dc+Dr) #计算 Somers,
d 系数
ASE d=ASE taub ?sqrt(2?sqrt(Dc ?Dr)/(Dc+
Dr))
Somer dCR=( P?Q)/Dr #计算 Somers, d( C |
R)系数
ASE dCR=2/Dr^2? sqrt ( sum ( x ?( Dr ?( C?D)?(P?Q)?( n ?Ri))^2))
Somer dRC=(P?Q)/Dc #计算 Somers, d( R |
C)系数
ASE dRC=2/Dc^2? sqrt( sum ( x ?( Dc ?( C?D)?(P?Q)?( n ?Cj))^2))
coef= c ( Kendall taub,Kendall tauc,Goodman
gamma,Somer_d,Somer_dCR,Somer_dRC)
ASE=c(ASE taub,ASE tauc,ASE Goodman,ASE
_d,ASE_dCR,ASE_dRC)
pvalue=2?(1?pnorm ( abs ( coef/ASE))) #求检验 p 值
CI95=c( coef?1.96?ASE,coef+1.96?ASE) #
求95%的置信区间
result=matrix ( c ( coef,ASE,pvalue,CI95),nrow=6)
rownames ( result)= c ("Kendall taub","Kendall
tauc"," Goodman _ gamma"," Somer _ d"," Somer _
dCR","Somer dRC")
colnames( result)= c ("coef","ASE","pvalue"," CI95 low","CI95 up")
return( result)
}
在 R 程序中,輸入有序变量( X,Y)的列联表数据,运行 Ordinal 函数,就可得出所有系数、95%的置信区间和检验 p 值[8~10]。
2实例分析
2.1有序变量相关性在教学研究中的应用
教育教学中常常研究学科成绩之间的相关性,通常成绩以具体分数呈现,可以使用连续型变量相关性系数研究学科成绩间的相关性。但是,成绩也会以等级形式呈现,这时不同学科成绩就是有序变量,应该使用有序变量相关系数去研究不同学科成绩间的相关性。以研究某班80名学生的数学成绩(成绩等级:不及格、及格、中等、良好、优秀)与物理成绩的相关关系为例,具体数据如表2所列。
导入数据,运行 Ordinal 函数后,结果如表3所列。
根据表3可知,对称的系数中 Kendall τ b 系数是0.760,Kendall τc 系数是0.689,Goodman?Kruskal,s γ系数是0.937,Somers, d 系数是0.760,且显著性水平(p 值)都小于0.001。说明该班的数学成绩与物理成绩之间存在显著的正相关性,并且相关性较强。非对称系数中 Somers, d(C| R)系数是0.754,Somers, d(R | C)系数是0.766,且显著性水平(p 值)都小于0.001,说明物理成绩对数学成绩的影响程度要比数学成绩对物理成绩的影响程度大。
2.2有序变量相关性在医学研究中的应用
医学上经常考虑有序变量间的相互影响,如吸烟的频率与生存时间的关系、早晨起床时间段与胃病严重程度的关系等,这都需要使用有序变量相关系数去衡量变量间的相互影响。以婴儿体重(低于平均水平、平均水平、高于平均水平)和婴儿胎次(一胎、二胎、三胎、四胎及以上)为例研究有序变量间的关系,具体数据如表4所列。
导入数据,运行 Ordinal 函数后,结果如表5所列。
根據表5可知,对称的系数中 Kendall τ b 系数是0.524,Kendall τc 系数是0.552,Goodman?Kruskal,s γ系数是0.676,Somers, d 系数是0.523,且显著性水平(p 值)都小于0.001,说明婴儿体重和婴儿胎次存在显著的正相关性。由于医学上很多变量间有因果关系,而本例中主要考虑婴儿胎次对婴儿体重的影响,因此使用不对称的 Somers,d(R | C)相关系数。Somers, d(R | C)的系数为0.497,显著性水平( p 值)小于0.001,说明婴儿胎次对婴儿体重的有显著的正影响,即婴儿胎次越多,婴儿的体重越容易高于平均水平。
2.3有序变量相关性在市场调查中的应用
在市场调查中,问卷是搜集调查数据的重要工具,而在问卷设计时,选项不可避免的出现顺序,如五级量表:非常满意、比较满意、一般、比较不满意、非常不满意等。由于问卷的选项设置容易出现有序变量,因此问卷数据分析相关性时需要采用有序变量的相关系数。以研究被调查者的学历(小学、初中、高中、本科、研究生)和收入水平(收入2000元及以下为组1、收入2001~3500元为组2、收入3501~5000元为组3、收入5001~10000元为组4、收入10000元以上为组5)两有序变量间的相关关系为例,具体数据如表6所列。
导入数据,运行 Ordinal 函数后,结果如表7所列。
根据表7可知,对称的系数中 Kendall τ b 系数是0.749,Kendall τc 系数是0.725,Goodman?Kruskal,s γ系数是0.864,Somers, d 系数是0.749,且显著性水平(p 值)都小于0.001,说明学历与收入水平间存在较强的正相关性。问卷设计中考虑变量间的相互影响,本例中考虑学历对收入水平的影响,因此使用非对称系数中 Somers, d(C | R)系数,其值是0.746,且显著性水平( p 值)小于0.001,说明学历越高,收入水平越高。
3结语
本文通过教学、医学、市场调查三个实例,计算其有序变量的相关系数,可以发现以下结论:(1) Goodman?Kruskal,s γ系数要比其他系数大,而除 Goodman?Kruskal,s γ系数的5种相关系数相差不大;(2)在因果分析中,使用非对称的 Somers, d( C | R ), Somers, d(R | C)系数可以得到正确的结果。因此,有序变量相关性度量使用不同的相关系数虽然数值不同,但可以得到相同的结论。若需要考虑两个变量的因果关系,可以使用 Somers, d(C | R),Somers, d(R | C)系数,并且可根据系数对比两个变量互为因果的强弱。在分析具体实际问题时,合理使用有序变量相关系数更容易分析有序变量间的相关关系。同时,可以使用 R 软件编写计算的函数程序,方便研究者使用。
参考文献:
[1]李彦萍,杨红霞.非参数统计中相关系数的计算及其应用[J].山西农业大学学报(自然科学版),2003(4):363?366.
[2]杨雨龙.相关性分析方法及其应用浅析[ J].课程教育研究,2019(7):134+138.
[3]王伏虎,赵喜仓.名义变量列联表的相关统计量分析[J].统计与决策,2009(14):164?165.
[4]曹玉婵,左映龙.调查问卷数据统计列联表分析在 SPSS 中的实现[J].科技创新与应用,2018(26):9?11.
[5]赵鹏辉,崔蕊.列联表检验在疾病成因中的应用[ J].大庆师范学院学报,2013,33(3):33?38.
[6]吴喜之,赵博娟.非参数统计(第五版)[ M].北京:中国统计出版社,2019.
[7]陆运清.列联表资料检验的几种常见错误辨析[J].统计与决策,2010(15):161?163.
[8]陈雪东.列联表分析及在 SPSS 中的实现[ J].数理统计与管理,2002(1):14?18+40.
[9]董云朝.应用 SPSS 软件分析名义变量之间的相关性[J].福建电脑,2019,35(12):16?19.
[10]薛毅,陈立萍.统计建模与 R 软件[M].北京:清华大学出版社,2007.
作者简介:
陈鼎(1993—),硕士,助教,研究方向:统计教学与研究、多元统计分析及其应用。