r语言线性回归_(R语言)线性回归:机器学习基础技术
线性回归: 使用最小二乘法预测定量的结果的一种回归模型。
Anscombe数据集
它由统计学家弗朗西斯·安斯库姆(Francis Anscombe)建立,用来强调数据可视化和异常值在数据分析中的重要性。这个数据集有4对X变量和Y变量,它们具有相同的统计特性。将其放在统计图中,就会看到一些极大的差异。
代码如下:
#调用并查看数据 data(anscombe) attach(anscombe) anscombe #x1与y1的相关系数correlation of x1 and y1 cor(x1,y1) #x2与y2的相关系数correlation of x2 and y2 cor(x2,y2) #话四个变量之间的统计图 plot(x1,y1,main="统计图1") plot(x2,y2,main="统计图2") plot(x3,y3,main="统计图3") plot(x4,y4,main="统计图4")运行结果如下:
数据案例分析
1.一元线性回归分析案例
案例数据
案例代码
data<-read.csv("J:/应用回归分析/R版/应用回归分析R语言版原始数据/new1data2.2.csv",sep=",",head=T) attach(data)#将读入的数据导入数据框中的探索路劲,方便下方数据框中x与y的探索 a<-c(mean(x),sd(x),mean(y),sd(y))#计算均值与方差 a cor(x,y,method="pearson")#pearson相关系数 cor.test(x,y) lmdata<-lm(y~x,data=data)#线性拟合 anova(lmdata)#计算方差 summary(lmdata)#回归及显著性检验 SRE<-rstandard(lmdata)#计算学生化残差 SRE plot(x,SRE,xlab="城镇居民人均收入",ylab="学生化残差") plot(x,y,xlab="城镇人均收入",ylab="城镇人均支出") #预测人均收入x在800的人均支出y new<-data.frame(x=800)#将x=800导入数据库 new a<-predict(lmdata,new,interval="prediction",level=0.95)#预测区间(prediction interval) a#查看预测空间以及预测值 b<-predict(lmdata,new,interval="confidence",level=0.95)#置信区间(confidence interval) b#查看置信区间 d<-resid(lmdata,digits=6)#将残差赋值给d,保留6位小数 d detach(data)#将数据框剔除R路径运行结果:
结果分析:
由图可得,城镇人均收入均值为2241.5950,方差为1572.6231;城镇人均支出均值为1592.6082,方差为990.8777。
由图可知,相关系数为0.9963804,样本量为22,t值为52.419,p值远远小于0.05,说明其t检验显著。综合得到城镇人均收入与城镇人均支出有高度相关的线性关系。
由图可得出,决定系数为0.9928,调整后的决定系数为0.9924,回归方程的解释程度为99.28%,回归标准误差86.31。
回归方程为:
由图可得,SSR=20469619,SSE=148992;F=2747.7.P<2.2e-16,说明解释变量与被解释变量之间构成的方程高度显著。这跟相关系数检验一样。
如图所示是计算出的残差值。
由图可得,当人均收入为800时,人均支出为687.5764,预测空间在499.9982-875.1546之间;置信区间为634.9409-740.2118之间,预测概率为95%。
总结
以上是生活随笔为你收集整理的r语言线性回归_(R语言)线性回归:机器学习基础技术的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: python3多线程第三方库_Pytho
- 下一篇: python将二维数组转换为一维数组_p