使用R进行统计分析——回归分析

标签: R 回归分析 | 发表时间:2016-11-08 22:16 | 作者:蓝鲸
出处:http://bluewhale.cc

what-is-a-swot-analysis-650x339

准备工作

首先导入数据并创建名为lr_data的数据表。

#读取并创建数据表
lr_data=data.frame(read.csv('lr_data.csv',header = 1))

查看导入数据表的维度,结果显示456行,4列。

#查看数据表维度
dim(lr_data)
[1] 456 4

查看数据表中各字段的名称,结果显示共有4个字段,三个变量和一个目标。

#查看数据表的字段名称
names(lr_data)
[1] "variable1" "variable2" "variable3" "goal"

一元回归

使用lm()函数对变量1和目标值进行一元回归分析,并创建回归方程。R方为0.7778。说明自变量可以对因变量78%的变化进行解释。

#进行一元回归分析
fit=lm(goal~variable1,data=lr_data)
summary(fit)

%e4%b8%80%e5%85%83%e5%9b%9e%e5%bd%92
多元回归

使用三个变量和目标值进行多元回归分析,R方为0.85,说明三个自变量可以对因变量85%的变化进行解释。

#进行多元回归分析
fit=lm(goal~variable1+variable2+variable3,data=lr_data)
summary(fit)

%e5%a4%9a%e5%85%83%e5%9b%9e%e5%bd%92
逐步回归(向后)

使用逐步回归的方法从三个自变量中选择用于预测的变量。逐步回归中有向前和向后两种方法。向前逐步回归每次增加一个变量,直到模型不再改变。向后逐步回归每次减少一个变量,直到模型不再改变。这里使用向后逐步回归的方法选择预测变量。

#加载MASS库
library(MASS)
#建立多元回归模型
fit1=lm(goal~variable1+variable2+variable3,data=lr_data)
#向后逐步回归
stepAIC(fit,direction="backward")

%e9%80%90%e6%ad%a5%e5%9b%9e%e5%bd%92backward
向后逐步回归每次减少一个变量,因此在第一步时使用了所有的三个变量,在第二步时减少了其中的一个变量,再次减少变量后模型不再变化,因此结果为使用变量2和变量3作为预测变量。

全子集回归

除了逐步回归方法外,还有全子集回归方法可以用于挑选预测变量。全子集回归检测所有的变量,并展示最佳的模型的结果。下面是使用全子集回归的代码和结果。

#加载leaps库
library(leaps)
#使用全子集回归方法并绘制图表
leaps=regsubsets(goal~variable1+variable2+variable3,data=lr_data,nbest=2)
plot(leaps,scale='adjr2')

rplot01
在上图中,Y轴为R方值,X轴为截距和三个变量。只包含截距和变量1的模型R方为0.78,只包含截距和变量3的R方为0.82,只包含截距和变量2的R方式0.85。R方最高的模型包含截距,变量2和变量3,R方值为0.85。

变量重要性排序

在多元回归的三个变量中,还可以比较不同变量对结果的重要性。换句话说就是不同自变量对因变量的影响程度,具体的方法是先对数据进行标准化处理,然后对标准化回归系数进行对比,当其他预测变量不变的情况下,单独一个预测变量对因变量的变化。

#对数据表进行标准化处理
z_data=as.data.frame(scale(lr_data))
#创建多元回归模型
zfit=lm(goal~variable1+variable2+variable3,data=z_data)
#输出标准化回归系数
coef(zfit)

%e6%ad%a3%e5%88%99%e5%8c%96%e5%90%8e%e6%96%9c%e7%8e%87%e5%af%b9%e6%af%94

在上面截图中,变量2的一个标准差变化增加0.721个因变量的变化,变量3的一个标准差的变化增加0.157个因变量的变化。变量1的一个标准差的变化增加0.050个因变量的变化。因此重要程度依次为变量2,变量3和变量1。

比较模型拟合优度

我们选择最重要的变量2和变量3建立模型,并与之前包含三个变量的模型进行比较,看看去掉一个变量后模型的拟合优度是否有变化。

#创建模型
Fit2=lm(goal~variable2+variable3,data=lr_data)
Fit3=lm(goal~variable1+variable2+variable3,data=lr_data)
#对比模型拟合优度
anova(fit2,fit3)

%e6%a8%a1%e5%9e%8b%e5%af%b9%e6%af%94
P=0.3931,检验不显著,因此可以将变量1从模型中删除。

—【所有文章及图片版权归 蓝鲸(王彦平)所有。欢迎转载,但请注明转自“ 蓝鲸网站分析博客”。】—

相关 [统计分析 回归分析] 推荐:

使用R进行统计分析——回归分析

- - 蓝鲸的网站分析笔记
首先导入数据并创建名为lr_data的数据表. #读取并创建数据表 lr_data=data.frame(read.csv('lr_data.csv',header = 1)). 查看导入数据表的维度,结果显示456行,4列. #查看数据表维度 dim(lr_data) [1] 456 4. 查看数据表中各字段的名称,结果显示共有4个字段,三个变量和一个目标.

沈浩老师讲多元回归分析

- - 互联网分析
多元回归分析(Multiple Regression Analysis)是多变量分析的基础,也是理解监督类分析方法的入口. 实际上大部分学习统计分析和市场研究的人的都会用回归分析,操作也是比较简单的,但能够知道多元回归分析的适用条件或是如何将回归应用于实践,可能还要真正领会回归分析的基本思想和一些实际应用手法.

移动市场统计分析

- 壮壮爱 - 译言-每日精品译文推荐
来源Microsoft\'s Growth of Mobile Marketing. 译者chunfengqiushui. 人们相比以前花更多的时间在手机上,这个新的市场包括:智能手机、SEO(搜索引擎优化)、移动网站、地理定位和社交营销. 全世界40多亿在用手机中有10.8亿是智能手机,30.5亿是能收发短信的手机.

实时统计分析技术浅谈

- - CSDN博客推荐文章
    实时统计分析技术主要是为了满足数据应用中大家对数据的变化情况有一个较高时间灵敏度需求的情况. 应用要求能够近乎及时的反映数据的整体变化情况. 那么实时统计分析的核心关键点是实时性,也就是性能. 其还伴有另一个明确的特征,就是对于要统计的内容是十分明确的.     传统上,我们的数据统计分析方法是在一个关系数据库中创建表,然后将数据存储到表中.

SEOMOZ 2011排名因素的数据收集与统计分析

- liang - SEM WATCH
SEOmoz在此次的2011版搜索引擎优化排名因素的调查中,使用了让人耳目一新的统计学方法. 其中主要采用到的是Pearson积距相关系数. 而具体使用的方法,在http://www.seomoz.org/article/search-ranking-factors#methodology此文中有一些概述性的阐述.

分析报告、统计分析和数据挖掘的区别

- - 互联网分析
关于数据挖掘的作用,Berry and Linoff的定义尽管有些言过其实,但清晰的描述了数据挖掘的作用. “分析报告给你后见之明 (hindsight);统计分析给你先机 (foresight);数据挖掘给你洞察力 (insight)”. 你看到孙悟空跟二郎神打仗,然后写了个分析报告,说孙悟空在柔韧性上优势明显,二郎神在力气上出类拔萃,所以刚开始不相上下;结果两个人跑到竹林里,在竹子上面打,孙悟空的优势发挥出来,所以孙悟空赢了.

博客2011年度流量统计分析

- - 月光博客
  下面是使用Google Analytics(谷歌分析)中查看月光博客的2011年度流量统计分析,分析时间为今年一年时间,今年全年和去年全年的数据进行横向对比分析.   独立访问数增加了9.50%,综合浏览量增加了12.32%;每次访问页数为1.74,增加2.58%;跳出率74.06%,减少2.62%;平均网站停留时间00:01:39;增加14.09%;新访问次数百分比76.30%,减少1.86%.

统计分析抓住翻译国外论文的剽窃者

- - Solidot
懒惰的学生注意了,不要以为从网上找一篇论文,然后翻译到另一种语言,将其作为自己的成果不会被人注意到. 通过将文本分解对比两种语言中的相似词元素,或者利用双语字典,自动检查不同语言版本中有多少相同单词,西班牙Polytechnic理工大学 Alberto Barron-Cedeno的团队利用统计分析方法检查可疑文章.

R语言:优雅、卓越的统计分析及绘图环境

- - 技术改变世界 创新驱动中国 - 《程序员》官网
R语言由新西兰奥克兰大学的Ross Ihaka和Robert Gentleman两人共同发明,其词法和语法分别源自Scheme和S语言,一般认为R语言是S语言【注:John Chambers,贝尔实验室,1972】的一种方言. R是“GNU S”,一个能够自由有效地用于统计计算和绘图的语言和环境,它提供了广泛的统计分析和绘图技术,包括线性和非线性模型、统计检验、时间序列、分类、聚类等方法.

销售行业ERP数据统计分析都有哪些维度?

- - CSDN博客综合推荐文章
当前的企业信息化建设主要包括ERP系统、OA系统等. 企业希望实现信息系统数据的整合,对企业资源进行分析汇总,方便对企业相关数据的掌控从而便于对业务流程进行及时调整监控. 但是由于系统间数据的组合众多,对于数据的分析维度也有太多选择,由于人力和系统的支持度问题,对于这些可能性的维度都进行数据分析显然并不现实,那么一个销售行业如何针对行业特点、选定维度分析数据呢就成了一个需要思考的问题.