learning_R

R语言-方差分析与回归分析

2021-03-22  本文已影响0人  ks_c

 本文为 刘强,裴艳波,张贝贝. R语言与现代统计方法. 一书的阅读记录,仅有粗略的操作步骤。没有数理统计基础及相关数学知识的人慎用此书以及本文。

一、回归

fit <- lm(formula, data=data)

formula部分可以为y~x1+x2+x3

+ 添加一个自变量,两个自变量之间为并列。
:冒号表示两个自变量的交互项
* 星号表示两者相加且相乘(x1*x2:x1+x2+x1:x2)

lm(X1X4*X5,data=xxx)等同于lm(X1X4+X5+X4:X5,data=xxx)

fit #输出回归系数Coefficients:
summary(fit)#输出残差Residuals、回归系数Coefficients:、拟合程度R2和F
aov(fit)#自变量的平方和

回归诊断

  1. gauss-markov假设的诊断:参见:样本独立、正态、等方差

通过观察误差项是否满足以下假设来检验:

par(mfrow=c(2,2))#
plot(fit)#四幅回归模型检验图

par()函数参见

plot(fit)

1.1. 异方差性

H0:误差的方差恒定

car包

library(car)
ncvTest(fit)
## Non-constant Variance Score Test 
## Variance formula: ~ fitted.values 
## Chisquare = 0.1310691, Df = 1, p = 0.71733

结果大于0.05则表示H0成立,不存在异方差性

car::spreadLevelPlot(fit)
## Suggested power transformation:  -0.646129

图为学生化后的残差与拟合值的散点图,出现水平线表示等方差,斜线则为异方差(方差不齐)。

Suggested power transformation: -0.646129表示将数据进行 -0.646129次方的转换之后异方差性会减到最小。

spreadLevelPlot(fit)

1.2. 自相关(自变量自己会影响自己,19年的物价会影响20年的物价)

durbin-waston:

car::durbinWatsonTest(fit)
## lag Autocorrelation D-W Statistic p-value
##   1       0.1345412     0.8877734   0.002
##  Alternative hypothesis: rho != 0
  1. 多重共线性

矩阵x是列满秩矩阵-->各列变量之间线性无关

2.1. VIF

car::vif(fit)

vif

2.2. 特征值法

接近0则有多多重共线性

x <- as.matrix(cbind(rep(1,nrow(data)),data[,-y]))
xx <- t(x)%*%x
xx
##                   rep(1, nrow(xxx))           X2           X3
## rep(1, nrow(xxx))          11.0 3.479343e+05      1508505
## X2                         347934.3 1.168701e+10  47854633475
## X3                        1508504.8 4.785463e+10 206909714762

2.3. 条件数法


条件数ki

\lambdai趋近于0,则ki趋近于正无穷

  1. 强影响点

3.1. 异常值

3.2. 高杠杆值

3.3. 强影响点

二、单因素方差分析

上一篇下一篇

猜你喜欢

热点阅读