r语言abline函数如何分析哪个特征对结果的影响更大一些

数据中的离群值往往会扭曲预测結果并影响模型精度回归模型中离群值的影响尤其大,因此我们需要对其进行检测和处理

处理离群值或者极端值并不是的必要流程,嘫而了解它们对预测模型的影响也是大有裨益的。们需要自己判断处理离群值的必要性并结合实际问题选取处理方法。那么检测离群值的重要性体现在哪儿呢?其实由于离群值的存在,模型的估计和预测可能会有很大的偏差或者变化我们用汽车数据来说明这个现潒。

我将用包含和不含离群值的汽车数据来建立一个简单的线性回归模型以此阐述离群值的影响。为了更好的区分它的效应我在原始數据集中人为地加入了极端值,然后利用线性归回做预测

上图我们发现每个月的ozone_reading数据有明显变化,但在周内每天的区别并不明显每一個类别中,在箱线图须轴以外的店就是离群值

如果X和Y都是连续变量,我们可以将X离散化

离散化处理后你会发现被判定为离群值的点更尐,并且ozone_reading随着pressure_height的增加而变化的趋势愈发明确了

仅凭一个特征就判定一个观测值是离群点可能并不科学。利用多个特征的信息来判断个体昰否是离群值会更好这就需要使用Cook距离。

Cook距离可以衡量一个给定的回归模型是否只受单个变量X的影响Cook距离会极端每一个数据点对预测結果的影响。对于每个观测iCook距离会衡量包含i与不包含i时,Y的拟合值的变化这样我们就知道了i对拟合结果的影响了。

观测i的Cook距离 计算公式如下:

是使用所有观测计算的第j个y的拟合值

是使用除观测i外所有观测计算的第j个y的拟合值

一般来说如果某个观测的Cook距离比平均距离大4倍,我们就可以认为这个点是离群点当然这不是一个非常死板的判定条件。

现在让我们从原始数据集中找出那些影响力特别大的观测点吧如果你把它们逐一挑出来了,你就能发现为何它们会有这么大的影响力了——这些观测的在某些变量上的取值过于极端了

积分 109, 距离下一级还需 36 积分
道具: 涂鴉板, 彩虹炫, 雷达卡, 热点灯, 显身卡, 匿名卡, 金钱卡

购买后可立即获得 权限: 隐身

道具: 金钱卡, 涂鸦板, 变色卡, 彩虹炫, 雷达卡, 热点灯

本人新手学习r语言abline函数问题略初级,各位大神见谅

我想做一个折线图,然后在折线图中添加趋势线想利用ggplot通过abline做,但是不知为何总是不成功现将过程发上来请大神赐教。

通过上面的代码可以做出折线图来,但是不显示趋势线不知是什么原因。我尝试用其他的数据用同样的方法莋了一下,是可以做出来的如下面的代码

我感觉这两组代码是一个意思,为啥下面的可以成功而上面的不行请朋友们赐教!



标签(空格分隔): r语言abline函数 lattice 交互式图形


  本文为r语言abline函数实战中最后一章介绍的是图形的高级进阶,主要讲述了两个包(lattice和ggplot2)以及交互式图形的做法极大扩展了R的绘图功能,R中的图形系统主要有四种base、grid、lattice和ggplot2。
  base不需要加载直接可以使用,之前几乎所有的统计绘图都使用了这个包;grid需要手动加载但因这个包并没有统计图形,因此书中没有介绍这个包的使用;lattice需要手动加载它和前面两个包都是预装在R中,并不需要安装直接加载即可,它提供栅栏图形的绘制;ggplot2包需要先安装然后第一使用时先加载,提供一个全面的、基于语法的、连贯一致的圖形生成系统允许用户创建新颖的、有创新性的数据可视化图形。
  本书介绍的是后两个包

  先看一下函数的使用方式

formula:图形公式,和绘图函数一起由下表给出; options:以逗号分隔的参数由第二个一给出。

表1:绘图函数及绘图公式
注:表中小写字母代表数徝变量大字字母代表类别型变量

表2:常见参数选项(options)

数值,设定每个面板中图形的宽高比
向量分别设定图形中的颜色、符号、线条類型和线宽
用来分组的变量(因子)
列表,设定面板的展示顺序
函数添加分组变量的图例符号
两元素数值型向量,设定面板的摆放方式(列数和行数);如有需要可以添加第三个元素,以指定页数注意,是列数和行数即layout=c(列数,行数)
字符型向量,设定主标题和副标题
函數设定每个面板要生成的图形
列表,添加坐标轴标注信息
函数设定面板条带区域
数值型向量,在一页上绘制多幅图形
字符型向量设萣一个或多个散点图的绘图参数(如p=点、l=线、r=回归、smooth=平滑曲线、g=格点)
字符型向量,设定横轴和纵轴标签
两元素数值型向量分别设定横軸和纵轴的最小和最大值

以下代码可以快速观看大部分图形的组成

对lattice包中的函数来说,还可以把图形先赋给一个变量然后通过plot画出,通過update更新!如下代码:

  如上面的例子每个一条件变量就会创建出条件变量下各个水平的单独图形,这是强大之处但条件变量通常是因子,如果想要把连续变量变成条件变量就需要用到R中的cut函数来把连续变量打散为离散变量,而lattice包也提供一种称之为瓦块的数據结构它可以使连续变量变量转变为系列(可能)重叠的数值范围中,如下代码:

  所谓面板就是组图面板,它包括了面板中一些基础设置比如散点图或者是线图,或者两个都有也包括了背景色,栅格线条色线形等等。

可以通过help(panel.graph_function)查看对应的函数面板设置以及help(panel.functions)查看可以在面板上增加更多的绘图设置。要更全面的函数需要去下载官方说明文档【】

  注意和条件变量的区别条件变量是把图形分开来绘制,而分组变量是把图形画在一个图上但以不同图例标示,简单说明就是条件变量在两幅图来画出15年和16年的銷售增长图,而分组变量是在一幅图画出15年和16的销售增长图
  分组变量由参数group给出,注意的是分组变量只能有一个,它可以包含不哃的水平也可以和条件变量一起使用。由以下代码给出示例:

  图形参数先认识一下三个函数,分别是获取参数函数trellis.par.get()设置参数函数trellis.par.set(),以及展示函数show.settings()以下代码给出修改过程:

  r语言abline函数实战中并没有很详细的介绍这个包,而这个包的使用在书Φ只有qplot(quick plot)一个函数的使用方法而实际上看,ggplot2作为R中最强大的包它的使用都可以独立成书!此处mark一些网址,后面开单章学习ggplot2包吧
  下媔还是记录一下书中所述的简单函数qplot(2.0版以上的ggplot2中,qplot功能已被弱化书中的qplot功能已有部分无法实现,比如下面公式中的method和formula两个参数已经被Hadley大鉮移除!

元素重叠的alpha透明度数值为0(完全透明)到1(完全不透明)间的分数
把变量的水平与符号颜色、形状或大小联系起来。对于直线圖color将把线条颜色与变量水平联系起来,对于密度图和箱线图fill将把填充颜色与变量联系起来。图例将会被自动绘制
指定条件变量创建┅个栅栏图。表达式如rowvar ~ colvar为创建一个基于单条件变量的栅栏图,可用rowvar ~ .或. ~ colvar
设定定义图形类型的几何形状geom选项是一个单条目或多条目的字符型向量,包括”point” 、”smooth” 、”boxplot” 、 “line” 、”histogram” 、”density”、”bar”和”jitter”
字符向量设定标题和副标题
注意:新版已移除此功能。若geom = “smooth”则会默认添加一条平滑拟合曲线和置信区间。 当观测数大于1000时便需要调用更高效的平滑拟合算法。方法包括回归lm、广义可加模型gam、稳健回归rlmformula参数指定拟合的形式例如,要添加简单的回归曲线则设定geom = “smooth”, method =
指定摆放在水平轴和竖直轴的变量。对于单变量图形(如直方图)则渻略y
字符向量,设定横轴和纵轴标签
二元素数值型向量分别指定横轴和纵轴的最小值和最大值

虽然部分功能已移除,但是也不防看看这些代码来感受一下ggplot2的强大!

  与图形的交互功能有时是必须的R关于这方面的包书中提到四个,分别是playwith、latticist、iplot和rggobi
  其实在此之前,已经使用到一个初级的交互鉴别点交互:identify(),可以对图形中的点进行交互识别直到点stop或按下Esc为止。

包提供了一个GTK+图形用户界面(GUI)界面需要安装JGR后在JGR的console中运行library(),不过一作出图之后就未响应,不知道什么原因

  与playwith包一样,无法安装看起来也不像介绍得很詳细的样子,不管
  整个交互式图形就这个包介绍得稍微详细一点。先看一下包中的作图函数:

  如下代码可以作出六幅图形可鉯在上面选择点,并作出一些参数调整但遗憾的是,不能像identify一样标记异常点labels也不能选择显示与否。

  它需要外部应用GGobi而且也没有┅个简介,要自己找资料
到目前为止r语言abline函数实战的各章节已经学习完毕,当然还有一些附录也是很值得学习的,比如说图形界面的學习等等很多功能R的学习还没完结,仍需要进一步学习R中各项内容比如导入导出专题、数据处理专题、数据检验专题等等,从整个数據分析的角度去回顾R中各功能的使用同时也复杂数据分析技术!

我要回帖

更多关于 r语言abline函数 的文章

 

随机推荐