R语言学习-第十课-相关分析

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/FIll_Mood/article/details/84826965

1.相关系数的估计和检验

相关系数作为随机变量之间相关程度的度量指标,能刻画线性关系的相关程度

formula

对于二维随机变量,相关系数的一个矩估计,也是样本相关系数为

Pearson相关系数

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

计算检验的统计量: 

T检验


x <-M[,3]

y <- M[,4]

n <- nrow(M)

#按照公式设置分子

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

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

T
#使用公式cor.text(~x+y,data=M)得到显著性检验输出结果,对于p<alpha,拒绝原假设,认为两个随机变量具有一定的线性关系

显示统计量t,自由度 df,检验p值p-value

2.偏相关系数

偏相关系数是在消除其他变量的影响条件下,计算某两个变量之间的相关系数,能够显示出和相关系数不一样的相关性性质。

#计算偏相关系数
x<-read.table("",head=ture)
cor(x)
t.df<-nrow(x)-ncol(x)#自由度n-p
ndata<-nrow(x)
nvar<-ncol(x)
r12=cor(x[1,2]-cor(x)[1,3]*cor(x)[2,3])/aqrt(1-cor(x)[1,3]^2)*sqrt(1-cor(x)[2,3]^2))
t<-r12*sqrt(ndata-nvar)/sqrt(1-r12^2)
p1<-pt(t,t.df)
p2<-p1-0.5
if(any(p2<=0)) p<-2*p1 else p<-2*(1-p1)
data.frame(parial.coefs12=r12,t<-t,df<-t.df,p-value=p)

3.复相关系数

x<-
det(cor(x))
M11<-coor(x)[-1,-1]
det(M11)
r<-sqrt(1-det(cor(x))/det(M11))
F<-(nrow(x)-ncol(x))/(ncol(x)-1)*r^2/(1-r^2)

猜你喜欢

转载自blog.csdn.net/FIll_Mood/article/details/84826965