R语言回归分析指南

R语言回归分析指南

欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答、求职一站式搞定!

对商业智能BI、大数据分析挖掘、机器学习,python,R等数据领域感兴趣的同学加微信:tstoutiao,邀请你进入数据爱好者交流群,数据爱好者们都在这儿。

作者:郑连虎,在数学学院取得理学学位的文科生,中国人民大学硕博连读生在读,山东大学管理学学士、理学学士

本期介绍:

线性回归、逻辑回归、泊松回归、多层线性模型的R语言实战技术

常用命令:

lm或lm.fit:

线性模型的拟合(fit linear models)

predict.lm:

线性回归的预测(for prediction)

lm.influence:

线性模型的回归诊断(for regression diagnostics)

lm.wfit:

加权线性模型的拟合(for weighted regression fitting)

plm:

面板数据的线性回归分析(Linear models for panel data)

glm:

广义线性模型的拟合(fit generalized linear models)

lme:

线性混合效应模型的拟合(fits a linear mixed-effects model)

实例演示:

### 线性回归

## 数据准备

# 设置工作目录

setwd('D:/R_regression')

# 读取数据

data1 = read.csv("cassady.csv", header=T)

## 回归分析

# 考察大学平均绩点(GPA)与学业的认知焦虑(CTA.tot)、生理焦虑(BStotal)之间是否存在关系(注意命令lm)

model1_1

# 报告回归分析结果

summary(model1_1)

# 报告方差分析结果

anova(model1_1)

R语言回归分析指南

# 考虑交互项

model1_2

# 报告含有交互项的拟合结果

summary(model1_2)

R语言回归分析指南

## 检验线性回归的经典假设条件

# 安装并加载car程序包

install.packages("car")

library(car)

# 正态性检验

qqPlot(model1_1)

R语言回归分析指南

# 同方差检验

residualPlots(model1_1)

R语言回归分析指南

R语言回归分析指南

### 逻辑回归

## 数据准备

# 设置工作目录

setwd('D:/R_regression')

# 读取数据

data2 = read.csv("coronaryArtery.csv", header=T)

## 回归分析

# 考察冠心病状态(group)与步行至疲劳的时间(time)之间是否存在关系(注意参数family)

model2

# 报告回归分析结果

summary(model2)

R语言回归分析指南

# 卡方检验

model2_p = 1-pchisq(deviance(model2), df.residual(model2))

model2_p

[1] 0.7936135

### 泊松回归

## 数据准备

# 设置工作目录

setwd('D:/R_regression')

# 读取数据

data3 = read.csv("babies.csv", header=T)

## 回归分析

# 考察一个家庭的社会经济地位(sei)与居住在家中6个月以下的儿童数量(babies)之间是否存在关系(注意参数family)

model3

# 报告回归分析结果

summary(model3)

R语言回归分析指南

# 卡方检验

model3_p= 1-pchisq(deviance(model3), df.residual(model3))

model3_p

[1] 0.9849675

### 多层线性模型

## 数据准备

# 设置工作目录

setwd('D:/R_regression')

# 读取数据

data4 = read.csv("Achieve.csv", header=T)

## 回归分析

# 安装并加载nlme程序包

install.packages("nlme")

library(nlme)

# 考察学生的词汇测试得分在多大程度上可以预测一般阅读成绩(学生是嵌套在学校里的,需要用HLM(MLM)来分析具有层次结构的数据)

model4

# 报告回归分析结果

summary(model4)

R语言回归分析指南

# 计算类内方差与类间方差

estVar = VarCorr(model4)

tausq = as.numeric(estVar [1,1])

sigmasq = as.numeric(estVar [2,1])

# 报告ICC结果

estICC = tausq/(tausq+sigmasq)

estICC

[1] 0.07201576

参考文献:

Ding-Geng Chen. Statistical Modelling and Computing using R. University of North Carolina-Chapel Hill, USA

R语言回归分析指南

精彩回顾

R语言绘图:28个实用程序包

Stata绘图:简单好用的37条外部命令

技术贴│Stata回归图表美化

SPSS时间序列分析

R语言图形界面R commander

R语言数据挖掘利器:Rattle包

R语言时间序列分析

技术贴│R语言13种相关矩阵图

技术贴│REmap包:简单好用绘地图

R语言回归分析指南

回复 爬虫 爬虫三大案例实战

回复 Python 1小时破冰入门

回复 数据挖掘 R语言入门及数据挖掘

回复 人工智能 三个月入门人工智能

回复 数据分析师 数据分析师成长之路

回复 机器学习 机器学习的商业应用

回复 数据科学 数据科学实战

回复 常用算法 常用数据挖掘算法


分享到:


相關文章: