分享一些简单快速上手的回归分析中的一些相关内容,内容来自《R语言实战》。
线性模型:拟合线性模型最基本的函数就是lm( ),格式为
myfit <- lm(formula,data)
其中,formula指要拟合的模型形式
例如:fit <- lm(weight ~ height,data = women)
summary(fit)
fitted(fit) ##列出拟合模型的预测值
plot( ) ##生成评价拟合模型的诊断图(用身高预测体重的散点图以及回归线)
此外还有多项式回归和多元线性回归
广义线性模型:建立:例如glm(Y~X1+X2+X3,family = binomial(link = “logit”),data = mydata)
模型拟合和回归诊断:可用线性回归的方法
logistic回归:ARE包中的例子
Affairs$affairs[Affairs$affairs > 0] <- 1
Affairs$affairs[Affairs$affairs > 0] <- 0
回归方程----诊断:就是看模型是否合适,模型在多大程度上满足统计假设的任何信息
car包中提供好了大量的函数,大大增强了拟合和评价回归模型的能力。另外, gvlma包提供了对所有线性模型假设进行检验的方法。
正态性:qqplot()函数提供了更为精确的正态假设检验方法
误差的独立性:car包中的Durbin-Watson检验函数
durbinWatsonTest( )
线性:liabrary(car)
crPlots( )
同方差性:car包提供了两个有用的函数,可以判断误差是否恒定
library(car)
ncvTest( )
spreadLevelPlot( )
比较:用基础安装中的anova()函数可以比较两个嵌套模型的拟合优度
anova(fit1,fit2)
此处,模型1嵌套在模型2中(1:A和B,2:A和B和C和D)
anova( )函数同时还对是否应该添加C和D到线性模型中进行了检验。由于检验不显著 (p=0.994),结论:不需要添加到模型中
AIC也可以用来比较模型
AIC(fit1,fit2)
##ANOVA需要嵌套模型,AIC方法不需要
变量筛选:逐步回归:模型会一次添加或者删除一个变量,知道达到某个判停标准为止
全子集回归:所有可能的模型都会被检验