R 相关与相关性的显著性检验

2024-08-29 10:58

本文主要是介绍R 相关与相关性的显著性检验,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.数据说明

R语言的自带的数据包中states.x77(关于美国50个州的某些数据)第1至6列的50份数据从统计的角度以及R语言的角度进行分析,看看R语言是怎么做相关分析的,同时怎么看分析出的结果 
首先我们观察一下states.x77中第1至6列的数据及其意义

列名解释单位
Population人口
Income人均收入美元/人
Illiteracy文盲率%
Life Exp预期寿命
Murder谋杀率%(每100,000人)
HS Grad高中毕业率%

2.统计学的计算过程

(1)我们拿出文盲率(设为x)和预期寿命(设为y)来从统计的角度计算相关系数r以及显著性水平α:

首先,我们假设文盲率和预期寿命符合计算Pearson相关系数的变量要求: 
①两变量相互独立 
②两变量为连续变量 
③两变量的分布遵循正态分布 
④两变量呈线性关系

换句话来说,当你选择的变量符合上要求的时候,可以选择使用Pearson相关系数来求两个变量间的相关关系

(2)按照上一篇文章对相关分析的解说,计算Pearson相关系数的时候,有两个步骤:

①计算相关系数r 
②计算显著性水平α

因此这里作出简单的讲解: 
①计算相关系数r 
Pearson的相关系数r的公式为: 
Pearson相关系数 
那么把数据代入到公式中计算

#state.x77第3列为文盲率
x <- state.x77[,3]
#state.x77第4列为预期寿命
y <- state.x77[,4]
#样本总数为50
n <- nrow(state.x77)
#按照公式设置分子
Numerator <- (n*sum(x*y)-sum(x)*sum(y))
#按照公式设置分母
Denominator <- (sqrt(n*sum(x^2)-sum(x)^2)*sqrt(n*sum(y^2)-sum(y)^2))
#计算出相关系数r
r <- Numerator / Denominator
r
[1] -0.5884779
  • 这个时候我们根据1977年发布的美国50个州的states.x77样本中的数据算出了相关系数r=-0.5884779,因为样本states.x77只是从总体(设为总体A)抽出来的数据(总体应该是这么多年来美国各个州的文盲率和预期寿命的数据),那么这个states.77样本中算出的相关系数r并不一定能代表总体A的相关系数ρ

相关系数

②计算显著性水平α 
设想一下,如果我们的总体A的相关系数ρ实际上为0的(也就是说总体上文盲率和预期寿命没有相关关系),因为误差或者抽样偏差的关系,抽样所得的states.x77的文盲率和预期寿命数据计算出来的相关系数r并不为0(也就是说样本上显示文盲率和预期寿命有相关关系),因此要进行显著性检验:

提出假设: 
H0:总体A的相关系数ρ=0(也就是说假设总体上文盲率和预期寿命没有相关关系) 
H1:总体A的相关系数ρ≠0(也就是说总体上文盲率和预期寿命有相关关系)

计算检验的统计量: 
T检验 
查表确定显著性水平α

把数据代入公式中计算:

T <- r*(sqrt(n-2))/sqrt(1-r^2)
T
[1] -5.042706

得出T=-5.042706

3.R语言应用以及观察结果

在R语言中,有直接的函数cor( )计算出Pearson相关系数 
同样是两个步骤: 
计算文盲率和预期寿命之间的相关系数r:

r <- cor(state.x77[,3],state.x77[,4])
r
[1] -0.5884779

和我们使用计算Pearson系数计算出的结果一致 
进行显著性检验

#使用cor.test()函数计算文盲率和预期寿命的相关关系,默认方法为Pearson相关分析
T <- cor.test(state.x77[,3],state.x77[,4])
T
Pearson's product-moment correlation
#这里列名数据来源
data:  state.x77[, 3] and state.x77[, 4]
#t值和使用显著性检验的公式计算出的t值一致
#自由度df为n-2=48
#p值查表可以得出6.969e-06 < 0.05
t = -5.0427, df = 48, p-value = 6.969e-06
#因此有95%以上的几率可以拒绝原假设总体A的相关系数ρ=0
#即文盲率和预期寿命的相关系数显著地不为0
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:-0.7448226 -0.3708811
#这里列示Pearson相关系数
sample estimates:cor 
-0.5884779

4.R语言扩展应用

当我们不仅仅需要计算文盲率和预期寿命的相关关系,而是计算state.x77中各个数据之间的相关关系,使用cor()也是可以做到的: 
再次按照相关分析的步骤: 
①计算相关系数r(两两变量间的相关系数)

> cor(state.x77[1:6)Population     Income  Illiteracy    Life Exp     
Population  1.00000000  0.2082276  0.10762237 -0.06805195  
Income      0.20822756  1.0000000 -0.43707519  0.34025534 
Illiteracy  0.10762237 -0.4370752  1.00000000 -0.58847793  
Life Exp   -0.06805195  0.3402553 -0.58847793  1.00000000 
Murder      0.34364275 -0.2300776  0.70297520 -0.78084575  
HS Grad    -0.09848975  0.6199323 -0.65718861  0.58221620 
Frost      -0.33215245  0.2262822 -0.67194697  0.26206801 
Area        0.02254384  0.3633154  0.07726113 -0.10733194  Murder     HS Grad
0.3436428 -0.09848975
-0.2300776  0.61993232
0.7029752 -0.65718861
-0.7808458  0.58221620
1.0000000 -0.48797102
-0.4879710  1.00000000
 -0.5388834  0.36677970
 0.2283902  0.33354187

②计算显著性水平α

> #赋值state.x77中第1至6列的数据给states
> states <- state.x77[,1:6]
> #执行对states中的缺失值进行行删除的显著性检验
> corr.test(states, adjust = "none", use = "complete")
Call:corr.test(x = states, use = "complete", adjust = "none")
Correlation matrix 
#进行Pearson相关系数计算Population Income Illiteracy Life Exp Murder HS Grad
Population       1.00   0.21       0.11    -0.07   0.34   -0.10
Income           0.21   1.00      -0.44     0.34  -0.23    0.62
Illiteracy       0.11  -0.44       1.00    -0.59   0.70   -0.66
Life Exp        -0.07   0.34      -0.59     1.00  -0.78    0.58
Murder           0.34  -0.23       0.70    -0.78   1.00   -0.49
HS Grad         -0.10   0.62      -0.66     0.58  -0.49    1.00
#样本数
Sample Size 
[1] 50
#进行显著性检验
Probability values (Entries above the diagonal are adjusted for multiple tests.) Population Income Illiteracy Life Exp Murder HS Grad
Population       0.00   0.15       0.46     0.64   0.01     0.5
Income           0.15   0.00       0.00     0.02   0.11     0.0
Illiteracy       0.46   0.00       0.00     0.00   0.00     0.0
Life Exp         0.64   0.02       0.00     0.00   0.00     0.0
Murder           0.01   0.11       0.00     0.00   0.00     0.0
HS Grad          0.50   0.00       0.00     0.00   0.00     0.0To see confidence intervals of the correlations, print with the short=FALSE option

从以上结果可以看出,具有显著性相关关系(设显著性水平为0.05,即超过95%的概率有相关关系)的两两变量有:

变量P值r值
Population,Murder0.010.34
Income, Illiteracy0.00-0.44
Income,Life Exp0.020.34
Income, HS Grad0.000.62
Illiteracy, Life Exp0.00-0.59
Illiteracy, Murder0.000.70
Illiteracy, HS Grad0.00-0.66
Life Exp, HS Grad0.000.58
Life Exp, Murder0.00-0.78
Murder, HS Grad0.00-0.49

这篇关于R 相关与相关性的显著性检验的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1117670

相关文章

sqlite3 相关知识

WAL 模式 VS 回滚模式 特性WAL 模式回滚模式(Rollback Journal)定义使用写前日志来记录变更。使用回滚日志来记录事务的所有修改。特点更高的并发性和性能;支持多读者和单写者。支持安全的事务回滚,但并发性较低。性能写入性能更好,尤其是读多写少的场景。写操作会造成较大的性能开销,尤其是在事务开始时。写入流程数据首先写入 WAL 文件,然后才从 WAL 刷新到主数据库。数据在开始

两个月冲刺软考——访问位与修改位的题型(淘汰哪一页);内聚的类型;关于码制的知识点;地址映射的相关内容

1.访问位与修改位的题型(淘汰哪一页) 访问位:为1时表示在内存期间被访问过,为0时表示未被访问;修改位:为1时表示该页面自从被装入内存后被修改过,为0时表示未修改过。 置换页面时,最先置换访问位和修改位为00的,其次是01(没被访问但被修改过)的,之后是10(被访问了但没被修改过),最后是11。 2.内聚的类型 功能内聚:完成一个单一功能,各个部分协同工作,缺一不可。 顺序内聚:

log4j2相关配置说明以及${sys:catalina.home}应用

${sys:catalina.home} 等价于 System.getProperty("catalina.home") 就是Tomcat的根目录:  C:\apache-tomcat-7.0.77 <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n" /> 2017-08-10

Node Linux相关安装

下载经编译好的文件cd /optwget https://nodejs.org/dist/v10.15.3/node-v10.15.3-linux-x64.tar.gztar -xvf node-v10.15.3-linux-x64.tar.gzln -s /opt/node-v10.15.3-linux-x64/bin/npm /usr/local/bin/ln -s /opt/nod

git ssh key相关

step1、进入.ssh文件夹   (windows下 下载git客户端)   cd ~/.ssh(windows mkdir ~/.ssh) step2、配置name和email git config --global user.name "你的名称"git config --global user.email "你的邮箱" step3、生成key ssh-keygen

zookeeper相关面试题

zk的数据同步原理?zk的集群会出现脑裂的问题吗?zk的watch机制实现原理?zk是如何保证一致性的?zk的快速选举leader原理?zk的典型应用场景zk中一个客户端修改了数据之后,其他客户端能够马上获取到最新的数据吗?zk对事物的支持? 1. zk的数据同步原理? zk的数据同步过程中,通过以下三个参数来选择对应的数据同步方式 peerLastZxid:Learner服务器(Follo

rtmp流媒体编程相关整理2013(crtmpserver,rtmpdump,x264,faac)

转自:http://blog.163.com/zhujiatc@126/blog/static/1834638201392335213119/ 相关资料在线版(不定时更新,其实也不会很多,也许一两个月也不会改) http://www.zhujiatc.esy.es/crtmpserver/index.htm 去年在这进行rtmp相关整理,其实内容早有了,只是整理一下看着方

枚举相关知识点

1.是用户定义的数据类型,为一组相关的常量赋予有意义的名字。 2.enum常量本身带有类型信息,即Weekday.SUN类型是Weekday,编译器会自动检查出类型错误,在编译期间可检查错误。 3.enum定义的枚举类有什么特点。         a.定义的enum类型总是继承自java.lang.Enum,且不能被继承,因为enum被编译器编译为final修饰的类。         b.只能定义

java计算机毕设课设—停车管理信息系统(附源码、文章、相关截图、部署视频)

这是什么系统? 资源获取方式在最下方 java计算机毕设课设—停车管理信息系统(附源码、文章、相关截图、部署视频) 停车管理信息系统是为了提升停车场的运营效率和管理水平而设计的综合性平台。系统涵盖用户信息管理、车位管理、收费管理、违规车辆处理等多个功能模块,旨在实现对停车场资源的高效配置和实时监控。此外,系统还提供了资讯管理和统计查询功能,帮助管理者及时发布信息并进行数据分析,为停车场的科学

一些数学经验总结——关于将原一元二次函数增加一些限制条件后最优结果的对比(主要针对公平关切相关的建模)

1.没有分段的情况 原函数为一元二次凹函数(开口向下),如下: 因为要使得其存在正解,必须满足,那么。 上述函数的最优结果为:,。 对应的mathematica代码如下: Clear["Global`*"]f0[x_, a_, b_, c_, d_] := (a*x - b)*(d - c*x);(*(b c+a d)/(2 a c)*)Maximize[{f0[x, a, b,