(ISLR-note)Chapter2-Experience

試著忘記壹切 提交于 2020-01-11 04:27:36

1.载入库函数

library(MASS)
library(ISLR)

2.简单回归

lm.fit = lm(response~predictor, data = DATASET)
attach(DATASET)
lm.fit = lm(response~predictor)

②查找置信区间

  confidence()

③predict()函数可以计算置信区间和预测区间

  predict(lm.fit, data.frame(predictor = (c(5, 10, 15))), interval = "confidence")
  predict(lm.fit, data.frame(predictor = (c(5, 10, 15))), interval = "prediction")

④画图

  plot(X, Y, (col = "COLOR"),  (pch ="+"))  //散点图
  abline(lm.fit, (lwd = CONSTANT), (col = "COLOR"))//在plot之后的图上做最小二乘回归
  par(mfrow = c(2,2))	//把绘图区域分次2 X 2

⑤残差

 也可用resuduals()函数计算线性回归拟合的残差,rstudent()函数计算学生化残差,也可以此绘制残差对拟合值的散点图
 plot(predict(lm.fit), residuals(lm.fit))
 plot(predict(lm.fit), rstudent(lm.fit))

3.多元线性回归

lm.fit = lm(y~x1+x2+x3, data = DATASET)
lm.fit = lm(y~., data = DATASET)	//表示对所有的预测变量
lm.fit = lm(y~x1+x2+x3, data = DATASET)
lm.fit = lm(y~.-age, data = DATASET)		//表示对除age变量外的所有预测变量进行回归

②交互项

 语句lstat : black将lstat 和 black的交互项纳入模型
 语句lstat * age 将lstat, age和交互项lstat x age同时作为预测变量,它是lstat + age + lstat : age的简写形式
 lm(medv~lstat*age, data = DATASET)

4.预测变量的非线性变换

 I(x^2)		//创建预测变量X^2
 lm.fit2 = lm(medv~lstat + I(lstat ^2))		//建立medv对lstat和lstat^2的回归

②anova()

 该函数进一步量化二次拟合在何种程度优于线性拟合
 anova(lm.fit,  lm.fit2)
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!