R-6 线性回归模型流程
本节内容:
0:小知识
1:新数据要如何进行分析
2:第二步骤:理解数据
3:第三步骤:相关分析
4:特殊点
0:小知识
0.1:我们说对分析一个数据一般是分步骤的:那么我们可以对其中的步骤进行打标签,也就是跟书签一样。
Ctrl+Shift+r
0.2: 将图形赋值一个变量后,这个变量其中会有图形的一些信息如y轴x轴频数等信息
plot_draw = plot(,,,,)
0.3:如何查看R的新包 登录R官网-->https://mirrors.tongji.edu.cn/CRAN/
一、新数据要如何进行分析
二、第二步骤:理解数据
统计量:summary(energraw) names(energraw) str(energraw)
可视化:对y的变量进行直方图、箱线图
attach(airquality) par(mfrow=c(1,2))
boxplot(Temp,col = 45)
hist(Temp) print(boxplot(Temp,col = 45))
print(hist(Temp))
三、第三步骤:相关分析
3.1:一个一个的做plot
plot(Ozone,Temp,col="tomato",main = "Temp & Ozone")
plot(Temp~Ozone,data = airquality)
abline(lm(Temp~Ozone,data = airquality))
#添加拟合线 系统对y和x做出的解释是怎么样的
3.2:做相关系数矩阵
library(corrgram)
library(mvtnorm)
library(kernlab) ##要使用corrgram 需要安装mvtnorm,kernlab corrgram(qq,order = TRUE,lower.panel = panel.shade,
upper.panel = panel.pie,text.panel = panel.txt,
main="Corrgram of Airquality intercorrelations")
偏相关系数:
#偏相关 我们在研究x1和x2的相关时候,可能会被x3或者其他的变量
#影响到我们对x1和x2的相关系数 ,所以需要对其他的变量进行控制
#控制其他的变量他的影响为0的情况下,x1和x2的相关系数
qq = na.omit(airquality)
cc = cor(qq)
library(igraph)
library(ggm)
cc
pcor(c(1,2,3,5,6),cc) ##0.3523451 控制其他变量得出的相关
cor(qq$Ozone,qq$Solar.R) ##0.3483417
四、数据建模
4.1 设置训练集 和测试集 两种方式
#第一种方式
qq = na.omit(airquality)
train_number = sample(1:nrow(qq),nrow(qq)*0.8) train = qq[train_number,]
test = qq[-train_number,] nrow(test) ##22
nrow(train) ##88 ##第二种方式 train_number2= sample(2,nrow(qq),replace = T,prob = c(0.8,0.1))
train_2 = qq[train_number2,]
test_2 = qq[-train_number2,]
4.2 数据建模,一元线性回归
with(train,plot(Temp,Ozone)) ##可以画出大概的散点图
runif = lm(train$Temp~train$Ozone,data = train)
runif
summary(runif) ##看模型好不一般我们看R方
四、异常点判断
https://zhuanlan.zhihu.com/p/28175779
4.1 离群点判别方法三种
1:做boxplot图
2:学生化残差(studentized residual)
因为该经理想要通过线性回归,来回答广告、定价和销量是否相关的问题,我们也可以通过回归的残差寻找“销量”的特异值。学生化残差是一种标准化的残差,它可以告诉我们哪些数据点的残差较大,超过±3的学生化残差可以被看作可能的离群值。在R软件中,可以使用rstudent()命令计算学生化残差。
3:
library(car)
outlierTest(runif)
R-6 线性回归模型流程的更多相关文章
- R语言解读多元线性回归模型
转载:http://blog.fens.me/r-multi-linear-regression/ 前言 本文接上一篇R语言解读一元线性回归模型.在许多生活和工作的实际问题中,影响因变量的因素可能不止 ...
- R语言解读一元线性回归模型
转载自:http://blog.fens.me/r-linear-regression/ 前言 在我们的日常生活中,存在大量的具有相关性的事件,比如大气压和海拔高度,海拔越高大气压强越小:人的身高和体 ...
- R与数据分析旧笔记(⑨)广义线性回归模型
广义线性回归模型 广义线性回归模型 例题1 R.Norell实验 为研究高压电线对牲畜的影响,R.Norell研究小的电流对农场动物的影响.他在实验中,选择了7头,6种电击强度, 0,1,2,3,4, ...
- R语言 常见模型
转自 雪晴网 [R]如何确定最适合数据集的机器学习算法 抽查(Spot checking)机器学习算法是指如何找出最适合于给定数据集的算法模型.本文中我将介绍八个常用于抽查的机器学习算法,文中还包括各 ...
- (原创)(三)机器学习笔记之Scikit Learn的线性回归模型初探
一.Scikit Learn中使用estimator三部曲 1. 构造estimator 2. 训练模型:fit 3. 利用模型进行预测:predict 二.模型评价 模型训练好后,度量模型拟合效果的 ...
- R语言︱机器学习模型评估方案(以随机森林算法为例)
笔者寄语:本文中大多内容来自<数据挖掘之道>,本文为读书笔记.在刚刚接触机器学习的时候,觉得在监督学习之后,做一个混淆矩阵就已经足够,但是完整的机器学习解决方案并不会如此草率.需要完整的评 ...
- R语言︱机器学习模型评价指标+(转)模型出错的四大原因及如何纠错
笔者寄语:机器学习中交叉验证的方式是主要的模型评价方法,交叉验证中用到了哪些指标呢? 交叉验证将数据分为训练数据集.测试数据集,然后通过训练数据集进行训练,通过测试数据集进行测试,验证集进行验证. 模 ...
- tensorflow入门(1):构造线性回归模型
今天让我们一起来学习如何用TF实现线性回归模型.所谓线性回归模型就是y = W * x + b的形式的表达式拟合的模型. 我们先假设一条直线为 y = 0.1x + 0.3,即W = 0.1,b = ...
- Python机器学习/LinearRegression(线性回归模型)(附源码)
LinearRegression(线性回归) 2019-02-20 20:25:47 1.线性回归简介 线性回归定义: 百科中解释 我个人的理解就是:线性回归算法就是一个使用线性函数作为模型框架($ ...
随机推荐
- Day 10 面向对象基础
目录 面对过程编程 面向对象编程 类 定义类 对象 定义对象 定制对象独有特征 面对过程编程 分析解决问题所需要的步骤, 用函数将这些步骤一步一步实现, 使用的时候一个个调用就可以了 优点: 复杂的问 ...
- 【JS】336- 拆解 JavaScript 中的异步模式
点击上方"前端自习课"关注,学习起来~ JavaScript 中有很多种异步编程的方式.callback.promise.generator.async await 甚至 RxJS ...
- 【CuteJavaScript】Angular6入门项目(1.构建项目和创建路由)
本文目录 一.项目起步 二.编写路由组件 三.编写页面组件 1.编写单一组件 2.模拟数据 3.编写主从组件 四.编写服务 1.为什么需要服务 2.编写服务 五.引入RxJS 1.关于RxJS 2.引 ...
- Redis的优缺点小结
Redis(Remote Dictionary Server 远程数据服务),一个 Key-value(键值对)存储系统,典型的 NoSQL 数据库服务器. 优点: 1.支持丰富的数据类型,如:Str ...
- 五分钟学会conda常用命令
文章目录 conda常用命令 1. 获取版本号 2. 获取帮助 3. 环境管理 4. 分享环境 5. 包管理 conda常用命令 1. 获取版本号 conda --version 或 conda -V ...
- Could not find any version that matches com.android.support:appcompat-v7:29.+
新学Android开发设计用到Android Studio,说实话真的是BUG满天飞,稍有不慎就会蹦出一个不明所以的问题. 新建Android工程时编译运行报错: 目测是本地文件和工程对应的依赖包不匹 ...
- requests第三方库
requests第三方库 简介: requests是一个优雅而简单的Python 第三方HTTP请求库,专为人类而构建. requests的官方文档同样也非常的完善详尽,而且少见的有中文官方文档:ht ...
- YII2中andWhere多个or查询
使用多个or的复杂查询: AND ((`name`='张三') OR (`name`='李四') OR (`name`='王五')) // AND ((`name`='张三') OR (`name`= ...
- 解决video.js不兼容ie8问题
使用视频播放器的时候,常常会让兼容一些浏览器问题,比如兼容ie8浏览器.在工作中使用的是video.js. 如果需要兼容,引入两个js库,就可以做到兼容ie8浏览器 <script src=&q ...
- jQuery基础之事件处理
jQuery基础之事件处理方法,如下图: 代码实现: <script src="JS/jquery-1.12.4.min.js"></script> < ...