收藏 分享(赏)

用R语言进行简单线性回归分析.docx

上传人:kpmy5893 文档编号:6544111 上传时间:2019-04-16 格式:DOCX 页数:5 大小:16.61KB
下载 相关 举报
用R语言进行简单线性回归分析.docx_第1页
第1页 / 共5页
用R语言进行简单线性回归分析.docx_第2页
第2页 / 共5页
用R语言进行简单线性回归分析.docx_第3页
第3页 / 共5页
用R语言进行简单线性回归分析.docx_第4页
第4页 / 共5页
用R语言进行简单线性回归分析.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、fire.txt :(数据出自何晓群-应用回归分析)x y3.4 26.21.8 17.84.6 31.32.3 23.13.1 27.55.5 360.7 14.13.0 22.32.6 19.64.3 31.32.1 241.1 17.36.1 43.24.8 36.43.8 26.1#-#数据准备fire - read.table(D:/fire.txt, head = T)#-#回归分析plot(fire$y fire$x)fire.reg - lm(fire$y fire$x, data = fire) #回归拟合summary(fire.reg) #回归分析表anova(fire.

2、reg) #方差分析表abline(fire.reg, col = 2, lty = 2) #拟合直线#-#残差分析fire.res - residuals(fire.reg) #残差fire.sre - rstandard(fire.reg) #学生化残差plot(fire.sre)abline(h = 0)text(11, fire.sre11, label = 11, adj = (-0.3), col = 2) #标注点#-#预测与控制attach(fire) #连接fire.reg - lm(y x) #这种回归拟合简单fire.points - data.frame(x = c(3

3、.5, 4)fire.pred - predict(fire.reg, fire.points, interval = prediction, level = 0.95) #预测:置信区间fire.preddetach(fire) #取消连接-#附自编的过程程序:(R 最大的好处是可以自己编想要的程序和函数,尤其没有内置函数的时候)fire - read.table(D:/fire.txt, head = T)attach(fire)-lxy - function(x)sum - 0sum0 - 0 for(i in 1:length(x)sum0 - (xi - mean(x) * (yi-

4、mean(y)sum - sum + sum0sum-#用这个就不需要循环了lxy - function(x)mid - (x - mean(x) * (y-mean(y)sum - sum(mid)sum#对于数据框、列表等数据对象要善用 apply()函数。-lxx - function(x)sum - 0sum0 - 0 for(i in 1:length(x)sum0 - (xi - mean(x)2sum - sum + sum0sumLxx - lxx(x)Lyy - lxx(y)Lxy - lxy(x)b1 - Lxy / Lxx; b1 #回归系数斜率b0 - mean(y)

5、- b1 * mean(x); b0 #回归系数截距residu - y - (b0 + b1*x); residu #残差r - Lxy / sqrt(Lxx * Lyy); r #相关系数rsqure - r2; rsqure #决定系数adrsqure - 1 - (length(x)-1)/(length(x)-2)*(1-r2) #调整后的决定系数-esrequre - function(x) #求标准差平方估计值sum - 0sum0 - 0 for(i in 1:length(x)sum0 - residui2sum - sum + sum0residusqure - sum/(

6、length(x)-2)residusqureesterreq - esrequre(x); esterreq #标准差平方估计值(MSE)ester - sqrt(esrequre(x); ester #标准差估计值( 回归分析表给出的标准误差 )val_t - b1*sqrt(Lxx) / ester; val_t #检验回归系数斜率 b1 的 t 值SSe - function(x) #求残差平方和sum - 0sum0 - 0 for(i in 1:length(x)sum0 - residui2sum - sum + sum0sumSSE - SSe(x); SSE #残差平方和MS

7、E - SSE/(length(x)-2); MSE #残差均方和SSr - function(x)sum - 0sum0 - 0 for(i in 1:length(x)sum0 - (b0 + b1*xi) - mean(y)2sum - sum + sum0sumSSR - SSr(x); SSR #回归平方和MSR - SSR/1; MSR #回归均方和val_F - SSR / MSE; val_F #检验回归方程 F 值hi - 1/length(x) + (x-mean(x)2/Lxx #杠杆值ZRE - residu / ester; ZRE #标准化残差SRE - residu/(ester*sqrt(1-hi); SRE #学生化残差Y - function(x)b0 + b1 * x #点估计Y(3.5)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 网络科技 > C/C++资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报