r怎么绘制residual和r fittedd的图

如何判断我们的线性回归模型是正确的?
1、回归诊断的基本方法
opar&-par(no.readOnly=TRUE)
fit &- lm(weight ~ height, data = women)
par(mfrow = c(2, 2))
为理解这些图形,我们来回顾一下OLS回归的统计假设。
(1)正态性(主要使用QQ图) 当预测变量值固定时,因变量成正态分布,则残差值也应该是一个均值为0的正态分布。正态Q-Q图(Normal Q-Q,右上)是在正态分布对应的值下,标准化残差的概率图。若满足正态假设,那么图上的点应该落在呈45度角的直线上;若不是如此,那么就违反了正态性的假设。
(2)独立性 你无法从这些图中分辨出因变量值是否相互独立,只能从收集的数据中来验证。上面的例子中,没有任何先验的理由去相信一位女性的体重会影响另外一位女性的体重。假若你发现数据是从一个家庭抽样得来的,那么可能必须要调整模型独立性的假设。
(3)线性(使用左上角的图,该曲线尽量拟合所有点) 若因变量与自变量线性相关,那么残差值与预测(拟合)值就没有任何系统关联。换句话说,除了白噪声,模型应该包含数据中所有的系统方差。在“残差图与拟合图”Residuals vs Fitted,左上)中可以清楚的看到一个曲线关系,这暗示着你可能需要对回归模型加上一个二次项。
(4)同方差性(左下角,点随机分布在曲线的周围) 若满足不变方差假设,那么在位置尺度图(Scale-Location Graph,左下)中,水平线周围的点应该随机分布。该图似乎满足此假设。最后一幅“残差与杠图”(Residuals vs Leverage,右下)提供了你可能关注的单个观测点的信息。从图形可以鉴别出离群点、高杠杆值点和强影响点
通过看图重新修改模型
newfit &- lm(weight ~ height + I(height^2), data = women[-c(13, 15),])
par(mfrow = c(2, 2))
plot(newfit)
2、使用改进的方法进行
主要使用的car包,进行回归诊断
(1)自变量的正态分布
qqPlot()函数提供了更为精确的正态假设检验方法
library(car)
fit &- lm(Murder ~ Population + Illiteracy + Income +&
& & Frost, data = states)
qqPlot(fit, labels = FALSE, simulate = TRUE, main = &Q-Q Plot&)
(2)误差的独立性
durbinWatsonTest(fit)
&lag Autocorrelation D-W Statistic p-value
& &1 & & &-0.2006929 & & &2.317691 & 0.248
&Alternative hypothesis: rho != 0
(3)线性相关 性
crPlots(fit, one.page = TRUE, ask = FALSE)
(4)同方差性
1、car包提供了两个有用的函数,可以判断误差方差是否恒定。ncvTest()函数生成一个计分检验,零假设为误差方差不变,备择假设为误差方差随着拟合值水平的变化而变化。
2、spreadLevelPlot()函数创建一个添加了最佳拟合曲线的散点图,展示标准化残差绝对值与拟合值的关系
library(car)
ncvTest(fit)
Non-constant Variance Score Test&
Variance formula: ~ fitted.values&
Chisquare = 1.746514 & &Df = 1 & & p = 0.1863156 & &
满足方差不变&p = 0.1863156 &&
spreadLevelPlot(fit)
3、线性模型假设的综合验证
library(gvlma)
gvmodel &- gvlma(fit)
summary(gvmodel)
lm(formula = Murder ~ Population + Illiteracy + Income + Frost,&
& & data = states)
Residuals:
& & Min & & &1Q &Median & & &3Q & & Max&
-4.5 -0.5 &7.6210&
Coefficients:
& & & & & & &Estimate Std. Error t value Pr(&|t|) & &
(Intercept) 1.235e+00 &3.866e+00 & 0.319 & 0.7510 & &
Population &2.237e-04 &9.052e-05 & 2.471 & 0.0173 * &
Illiteracy &4.143e+00 &8.744e-01 & 4.738 2.19e-05 ***
Income & & &6.442e-05 &6.837e-04 & 0.094 & 0.9253 & &
Frost & & & 5.813e-04 &1.005e-02 & 0.058 & 0.9541 & &
Signif. codes: &0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 2.535 on 45 degrees of freedom
Multiple R-squared: &0.567, & & Adjusted R-squared: &0.5285&
F-statistic: 14.73 on 4 and 45 DF, &p-value: 9.133e-08
ASSESSMENT OF THE LINEAR MODEL ASSUMPTIONS
USING THE GLOBAL TEST ON 4 DEGREES-OF-FREEDOM:
Level of Significance = &0.05&
&gvlma(x = fit)&
& & & & & & & & & & Value p-value & & & & & & & &Decision
Global Stat & & & &2.5 Assumptions acceptable.
Skewness & & & & & 1.0 Assumptions acceptable.
Kurtosis & & & & & 0.6 Assumptions acceptable.
Link Function & & &0.1 Assumptions acceptable.
Heteroscedasticity 0.3 Assumptions acceptable.
4、多重共线性
如何检测多重共线性
library(car)
Population Illiteracy & & Income & & &Frost&
& 1.245282 & 2.165848 & 1.345822 & 2.082547&
sqrt(vif(fit)) & 2
Population Illiteracy & & Income & & &Frost&
& & &FALSE & & &FALSE & & &FALSE & & &FALSE&
如何解决多重共线性?
使用岭回归、leasso。
本文已收录于以下专栏:
相关文章推荐
样本是否符合正态分布假设?
是否存在离群值导致模型产生较大误差?
线性模型是否合理?
误差是否满足独立性、等方差、正态分布等假设条件?
是否存在多重共线性?
正态分布检验...
model使用lm,glm线性模型拟合结果model plot(predict(model,type = &response&),residuals(model,type = &deviance&))...
《数据挖掘之道》点评:虽然我比较执着于Rwordseg,并不代表各位看管执着于我的执着,推荐结巴分词包,小巧玲珑,没有那么多幺蛾子,而且R版本和python版本都有,除了词性标注等分词包必备功能以外,...
回归诊断主要内容
(1).误差项是否满足独立性,等方差性与正态
(2).选择线性模型是否合适
(3).是否存在异常样本
(4).回归分析是否对某个样本的依赖过重,也就是模型是否具有稳定性
申明:本文作者才识有限,仅作为学习记录,如有差错,欢迎指正!也希望对他人有些许助益.在R语言中有一些关于教育诊断的一些包,我试着进入R包的CRAN,进行关键词检索,找到我想要试玩的那些教育数据挖掘(或...
1、R(至少)有三个各自独立的对象系统。S3和S4是S语言的不同版本,S3实现了基于generic function的面向对象。S4正式加入class definition等一套机制,使其更为严格。R...
原文链接:/R/1628.html
写在前面的废话
2014,又到了新的一年,首先祝大家新年快乐,也感谢那些关注我的博客的人。
现在想想...
R语言:多元线性回归和模型检验
R语言简单回归分析总结
机器学习中的一些方法如决策树,随机森林,SVM,神经网络由于对数据没有分布的假定等普通线性回归模型的一些约束,预测效果也比较不错,交叉验证结果也能被接受。下面以R中lars包包含数据集diabetes...
他的最新文章
讲师:王哲涵
讲师:韦玮
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)君,已阅读到文档的结尾了呢~~
概率统计复习和 EViews 简介
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
概率统计复习和 EViews 简介
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口苹果/安卓/wp
积分 20, 距离下一级还需 4 积分
道具: 彩虹炫, 涂鸦板, 雷达卡, 热点灯, 金钱卡
购买后可立即获得
权限: 隐身
道具: 金钱卡, 彩虹炫, 雷达卡, 热点灯, 涂鸦板
如题,做出来了预测值,怎样画和实际值的对照图呢?
载入中......
在Equation对话框中点VIew——Actual,fitted,Residual——Actual,fitted,Residual Graph就可以了。jimmy_young2005
&奖励回答网友提问& 23:21:38
本帖被以下文库推荐
& |主题: 8540, 订阅: 51
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
。。。。。没人解答下?
先resample到你估计的时间段,然后同时选中预测的序列和实际序列,右键-open as a group, 然后graph就可以了
楼上的意思是先把预测的值和实际值粘贴到一起并保存为一个组,然后再进行划分?
在Equation对话框中点VIew——Actual,fitted,Residual——Actual,fitted,Residual Graph就可以了。jimmy_young2005 &金币&+1 &魅力&+6 &奖励回答网友提问& 23:21:38
热心帮助其他会员
总评分:&经验 + 10&
论坛币 + 10&
未来会充满阳光么???
SKY312 hoho~many many thanks!!!!!!!!!!
SKY312 发表于
先resample到你估计的时间段,然后同时选中预测的序列和实际序列,右键-open as a group, 然后graph就可以 ...太感谢了!!
先对模型进行预测得到YF,然后点quick,选择show,输入Y YF然后确定就能得到Y YF的sheet,然后再view中选择Graph即可。
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
如有投资本站或合作意向,请联系(010-);
邮箱:service@pinggu.org
投诉或不良信息处理:(010-)
论坛法律顾问:王进律师R语言回归篇
21:48&1198人阅读&(0)&&
1.回归的多面性
个量化的解释变量来预测一个量化的响应变量(一个因变量、一个自变量)
一个量化的解释变量预测一个量化的响应变量,模型的关系是
n阶多项式(一个预测变量,但同时包含变量的幂)
用两个或多个量化的解释变量预测一个量化的响应变量(不止一个预测变量)
用一个或多个解释变量预测多个响应变量
用一个或多个解释变量预测一个类别型变量
用一个或多个解释变量预测一个代表频数的响应变量
Cox比例风险&&
用一个或多个解释变量预测一个事件(死亡、失败或旧病复发)发生的时间
时间序列对误差项相关的时间序列数据建模
用一个或多个量化的解释变量预测一个量化的响应变量,不过模型是非线性的
用一个或多个量化的解释变量预测一个量化的响应变量,模型的形式源
自数据形式,不事先设定
用一个或多个量化的解释变量预测一个量化的响应变量,能抵御强影响点的干扰
OLS回归是通过预测变量的加权和来预测量化的因变量,其中权重是通过数据估计而得以的参数。
使残差平方和最小
为能够恰当地解释OLS模型的系数,数据必须满足以下统计假设:
(1)&&&&&&正态性对于固定的自变量,因变量值成正态分布
(2)&&&&&&独立性
Yi值之间相互独立
(3)&&&&&&线性&&
因变量与自变量之间为线性相关
(4)&&&&&&同方差性因变量的方差不随自变量的水平不同而变化,即不变方差或同方差性
3. 用lm()拟合回归模型
拟合线性模型最基本的函数就是lm(),格式为:
myfit&-lm(formula,data)
formula指要拟合的模型形式,data是一个数据框,包含了用于拟合模型的数据
formula形式如下:Y~X1+X2+……+Xk (~左边为响应变量,右边为各个预测变量,预测变量之间用+符号分隔)
R表达式中常用的符号
分隔符号,左边为响应变量,右边为解释变量,eg:要通过x、z和w预测y,代码为y~x+z+w
分隔预测变量
表示预测变量的交互项&
eg:要通过x、z及x与z的交互项预测y,代码为y~x+z+x:z
表示所有可能交互项的简洁方式,代码y~x*z*w可展开为y~x+z+w+x:z+x:w+z:w+x:z:w
表示交互项达到某个次数,代码y~(x+z+w)^2可展开为y~x+z+w+x:z+x:w+z:w
表示包含除因变量外的所有变量,eg:若一个数据框包含变量x、y、z和w,代码y~.可展开为y~x+z+w
减号,表示从等式中移除某个变量,eg:y~(x+z+w)^2-x:w可展开为y~x+z+w+x:z+z:w
删除截距项,eg:表示y~x-1拟合y在x上的回归,并强制直线通过原点
从算术的角度来解释括号中的元素。Eg:y~x+(z+w)^2将展开为y~x+z+w+z:w。相反,代码y~x+I((z+w)^2)将展开为y~x+h,h是一个由z和w的平方和创建的新变量
可以在表达式中用的数学函数,例如log(y)~x+z+w表示通过x、z和w来预测log(y)
对拟合线性模型非常有用的其他函数
Summary()
展示拟合的详细结果
Coefficients()
列出拟合模型的模型参数(截距项和斜率)
Cofint()
提供模型参数的置信区间(默认95%)
Fitted()
列出拟合模型的预测值
Residuals()
列出拟合模型的残差值
生成一个拟合模型的方差分析,或者比较两个或更多拟合模型的方差分析表
列出模型参数的协方差矩阵
输出赤池信息统计量
生成评价拟合模型的诊断图
Predict()
用拟合模型对新的数据集预测响应变量值
4. 简单线性回归
在Pr(&|t|)栏,可以看到回归系数(3.45)显著不为0(p&0.001),表明身高每增加1英寸,体重将预期地增加3.45磅
R平方项(0.991)表明模型可以解释体重99.1%的方差,它也是实际和预测值之间的相关系数(R^2=r^2)
残差的标准误(1.53lbs)则可认为模型用身高预测体重的平均误差
F统计量检验所有的预测变量预测响应变量是否都在某个几率水平之上
5. 多项式回归
一般来说,n次多项式生成一个n-1个弯曲的曲线
car包中的scatterplot()函数,可以很容易、方便地绘制二元关系图
6.多元线性回归
采用的数据集:state.x77
检测二变量关系
scatterplotMatrix()函数默认在非对角线区域绘制变量间的散点图,并添加平滑(loess)和线性拟合曲线
多元线性回归
7.有交互项的多元线性回归
通过effects包中的effect()函数,可以用图形展示交互项的结果
8.回归诊断
(1)标准方法
正态性:当预测变量值固定时,因变量成正态颁,则残差图也应是一个均值为0的正态颁。正态Q-Q图是在正态颁对应的值上,标准化残差的概率图,若满足正态假设,则图上的点应该落在吓45度角的直线上,若不是,则违反了正态性假设。
独立性:只能从收集的数据中来验证。
线性:若因变量与自变量线性相关,则残差值与预测(拟合)值就没有任务系统关联,若存在关系,则说明可能城要对回归模型进行调整。
同方差性:若满足不变方差假设,则在位置尺度图(Scale-Location
Graph)中,水平线周围的点应随机分布。
二次拟合诊断图
(2)改进的方法
(car包中的)回归诊断实用函数&
qqPlot()
分位数比较图
durbinWatsonTest()
对误差自相关性做Durbin-Watson检验
crPlots()
成分与残差图
ncvTest()
对非恒定的误差方差做得分检验
spreadLevelPlot()
分散水平检验
outlierTest()
Bonferroni离群点检验
avPlots()
添加的变量图形&
inluencePlot()
回归影响图
scatterplot()
增强的散点图
scatterplotMatrix()
增强的散点图矩阵
方差膨胀因子&
另gvlma包提供了对所有线性模型进行检验的方法
plot()函数相比,qqplot()函数提供了更为精确的正态假设检验方法,画出了n-p-1个自由度的t分布下的学生化残差图形,n为样本大小,p是回归参数的数目(包括截距项)
绘制学生残差图的函数
误差的独立性:
之前提到可依据收集数据判断因变量是否独立
car包中提供了一个可做Durbin-Watson检验的函数,可检测误差的序列相关性
可通过成分残差图即偏残差图,判断因变量与自变量之间是否呈非线性关系,也可以看是否不同于已设定线性模型的系统偏差,图形可用car包中crPlots()函数绘制
若图形存在非线性,则说明可能对预测变量的函数形式建模不够充分
car包提供了两个有用的函数,可判断误差方差是否恒定
ncvTest()函数生成一个计分检验,零假设为误差方差不变
spreadLevelPlot()函数创建一个添加了最佳拟合曲线的散点图,展示标准化残差绝对值与拟合值的关系
检验同方差性:
(3)线性模型假设的综合验证
gvlma包中的gvlma()函数
(4)多重共线性
VIF(Variance Inflation Factor,方差膨胀因子)进行检测
一般原则下,(VIF)^1/2 &2表明存在多重共线性问题
9.异常观测值
(1)离群点
离群点指那些模型预测效果不佳的观测点,通常有很大的、或正或负的残差,正残差说明模型低估了响应值,负残差说明高佑了响应值
outlierTest()函数是根据单个最大(或正或负)残差值的显著性来判断是否有离群点,若不显著,则说明数据集中没有离群点,若显著,则必须删除该离群点,然后再检验是否还有其他离群点存在。
(2)高杠杆值点
高杠杆值观测点,即是与其他预测变量有关的离群点,即它们是由许多异常的预测变量组合起来的,与响应变量值没有关系。
高杠杆值的观测点可通过帽子统计量(hat
statistic)判断。对于一个给定的数据集,帽子均值为p/n,其中p是模型估计的参数数目(包含截距项),n是样本量。一般来说,若观测点的帽子值大于帽子均值的2或3倍,则可认定为高杠杆值点。
(3)强影响点
强影响点,即对模型参数估计值影响有些比例失衡的点。例如,当移除
模型的一个观测点时模型会发生巨大的改变,那么需要检测一下数据中是否存在强影响点。
Cook距离,或称为D统计量
& & Cook's
D值大于4/(n-k-1),则表明它是强影响点,其中n为样本量大小,k是预测变量数目(有助于鉴别强影响点,但并不提供关于这些点如何影响模型的信息)
变量添加图(added
plot)(弥补了该缺陷)(对于每个预测变量Xk,绘制Xk在其他k-1个预测变量上回归的残差值相对于响应变量在其他k-1个预测变量上回归的残差值的关系图)
car包中的influencePlot()函数,可将离群点、杠杆点和强影响点的信息整合到一幅图形中
影响图。纵坐标超过2或小于-2的州可被认为是离群点,水平轴超过0.2或0.3的州有高杠杆值(通常为预测值的组合)。圆圈大小与影响成比例,圆圈很大的点可能是对模型估计造成的不成比例影响的强影响点。
10.改进的措施
(1)删除观测点
删除观测点可提高数据集对于
正态假设的拟合度,而强影响点会干扰结果,通常也会被删除。删除最大的离群点或强影响点,模型需要重新拟合,若离群点或强影响点仍然存在,重复以上过程直到获得比较满意的拟合。
对删除观测点应持谨慎态度。
(2)变量变换&
当模型不符合正态性、线性或同方差性假设时,一个或多个变量的变换通常可以改善或调整模型效果。
当模型违反了正态假设时,通常可以对响应变量尝试某种变换。
car包中的powerTransform()函数
Box-Cox正态变换
(3)增删变量
改变模型的变量会影响模型的拟合度,增加或删除变量
多重共线问题:岭回归
11.选择“最佳”的回归模型
(1)模型比较
anova()函数可比较两个嵌套模型的拟合优度
嵌套模型即指它的一个些项完全饮食在另一个模型中
用anova()函数比较
模型1嵌套在模型2中,检验不显著,基础知识
不需要将Income和Frost添加到线性模型中,可将它们从模型中删除&
AIC(Akaike Information
Criterion,赤池信息准则)可用来比较模型,考虑了模型的统计拟合度及用来拟合的参数数目&
AIC值越小的模型要优行选择,说明模型用较少的参数获得了足够的拟合度
(2)变量选择
逐步回归法(stepwise method):
向前逐步回归(forward
stepwise)每次添加一个预测变量到模型中,直到添加变量不会使模型有所改进为止。
向后逐步回归(backward
stepwise)从模型包含所有预测变量开始,一次删除一个变量直到会降低模型质量为止。
向前向后逐步回归(stepwise
stepwise 逐步回归)
MASS包中的steAIC()函数可实现逐步回归模型,依据的是精确AIC准则
全子集回归(all-subsets
regression):
全子集回归,即所有可能的酣篮队支被检验,可选择展示所有可能的结果,也可展示n个不同子集大小(一个、两个或多个预测变量)的最佳模型
可用leaps包中的regsubsets()函数实现
可通过R平方、调整R平方或Mallows Cp统计量等准则来选择“最佳”模型
R平方是预测变量解释响应变量的程度
调整R平方与之类似,但考虑了模型的参数数目&
Cp统计量也用来作为逐步回归的判停规则,对于一个好的模型,它的Cp统计量非常迫近于模型的参数数目(包括截距项)
深层次分析
(1)交叉验证
交叉验证即将一定比例的数据挑选出来作为训练样本,另外的样本作为保留样本,先在训练样本上获取回归方程,然后在保留样本上做预测。
由于保留样本不涉及模型及参数的选择,该样本可获得比新数据更为精确的估计。
k重交叉难中,样本被分为k个子样本,轮流将k-1个子样本组合作为训练集,另外1个子样本作为保留集,这样会获得k个预测方程,记录k个保留样本的预测表现结果,然后求其平均值。【当n是观测总数目,k为n时,该方法又称作刀切法(jackknifing)】
bootstrap包中的crossval()函数可实现k重交叉验证
(2)相对重要性
相对权重:是对所有可能子模型添加一个预测变量引起的R平方均增加量的一个近似值。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 r fitted 的文章

 

随机推荐