回归分析R上机指导(不是课件,仅是上课时用部分内容).docVIP

  • 23
  • 0
  • 约2.92千字
  • 约 4页
  • 2017-06-04 发布于湖北
  • 举报

回归分析R上机指导(不是课件,仅是上课时用部分内容).doc

回归分析的R上机指导(不是课件,仅是上课时用的部分内容) 数据的输入 1.用向量的方式录入数据,适用于少量数据的录入 x-c(0.03, 0.04, 0.05, 0.07, 0.09, 0.10, 0.12, 0.15, 0.17, 0.20) y-c(40.50, 39.50, 41.00, 41.50, 43.0,42.00, 45.00, 47.50, 53.00, 56.00) 2.基本数据分析 mean(x) sd(x) median(x) min(x) max(x) boxplot(x) 3.建立数据结构 二、简单的线性分析 1.建立回归 d - data.frame(x=x, y=y) res-lm(y~x, data=d) 注1:res是一个对象,它存放了回归分析的所有内容,你需要什么可能通过这个对象取到 如: coef(res)可以得到参数估计 summary(res)可以得到回归分析的基本结果, anova(res)可以得到方差分析表等等。 其它的选择项还有: add1 coef effects kappa predict residuals alias deviance family labels print step anova drop1 formula plot proj summary 注2:你如果有什么不明白可以自己查手册,命令如下: “help.start()”或”?lm”或“?predict.lm”等等 2.预测: 如果你要对某点进行预测,那么操作如下: x0 - data.frame(x=0.18) predict(res,x0) 一般的预测的内容见下面的命令: predict(object, newdata, se.fit = FALSE, scale = NULL, df = Inf, interval = c(none, confidence, prediction), level = 0.95, type = c(response, terms), terms = NULL, na.action = na.pass, ...) 预测的置信区间 predict(res, data, level=0.95, interval=confidence) 预测区间: predict(res, data, level=0.95, interval=prediction) 下面是一个回归分析的例子: x - rnorm(15) y - x + rnorm(15) predict(lm(y ~ x)) new - data.frame(x = seq(-3, 3, 0.5)) predict(lm(y ~ x), new, se.fit = TRUE) pred.w.plim - predict(lm(y ~ x), new, interval=prediction) pred.w.clim - predict(lm(y ~ x), new, interval=confidence) matplot(new$x,cbind(pred.w.clim, pred.w.plim[,-1]), lty=c(1,2,2,3,3), type=l, ylab=predicted y) 多元线性回归 1.数据录入的另一种方式(如果数据已经从另外的软件中录入,那么可直接读入R 读入数据 xx-read.table(page038.txt,header=TRUE) yy-data.frame(X1=xx$X1,X2=xx$X2,Y=xx$Y) 2.建立回归模型 res-lm(Y~X1+X2,data=yy) 求残差,并建立加入到数据库中 r-residuals(res) zz-data.frame(yy,r=r) 3.加权最二小二乘估计,权重为残差 res1-lm(Y~X1+X2,data=zz,weight=abs(r)) 4.求预测区间及置信区间 predict(res1, data=zz, level=0.95, interval=confidence) predict(res1, data, level=0.95, interval=prediction) 求回归系数的置信区间 qt(0.975,25) clx1-c(-5.180e-04 -2.059539*5.626e-05,-5.180e-04 +2.059539*5

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档