R语言入门:多元线性回归

Candice
Candice
Candice
96
文章
0
评论
2020-04-1710:05:00 评论 369 975字
摘要

本文将介绍如何用R语言做多元线性回归。

一、问题

有若干个预测变量(比如u、v和w)和一个响应变量(y)。你觉得这些预测变量和响应变量间有线性关系,要对其做线性回归。

二、解决方案

用lm函数。在公式的右侧指定多个预测变量,用加号(+)连接:

代码

1> lm(y ~ u + v + w)

三、讨论

显然,多元线性回归是简单的线性回归的扩展。可以有多个预测变量,还是用OLS计算多项式的系数。三变量的回归等同于这个线性模型:

yi = β0 + β1ui + β2vi + β3wi + εi

在R中,简单线性回归和多元线性回归都是用lm函数。只要在模型公式的右侧增加变量即可。输出中会有拟合的模型的系数:

代码

> lm(y ~ u + v + w)

Call:

lm(formula = y ~ u + v + w)

Coefficients:

(Intercept) u v w

1.4222 1.0359 0.9217 0.7261

随着变量数的增加,lm的data参数显得愈发的重要,它可以让你将数据保存在一个数据框中,而无需使用一大堆的变量。假设你的数据保存在数据框中,例如这里的dfrm变量:

代码

> dfrm y u v w

1 6.584519 0.79939065 2.7971413 4.366557

2 6.425215 -2.31338537 2.7836201 4.515084

3 7.830578 1.71736899 2.7570401 3.865557

4 2.757777 1.27652888 0.4191765 2.547935

5 5.794566 0.39643488 2.3785468 3.265971

6 7.314611 1.82247760 1.8291302 4.518522

7 2.533638 -1.34186107 2.3472593 2.570884

8 8.696910 0.75946803 3.4028180 4.442560

9 6.304464 0.92000133 2.0654513 2.835248

10 8.095094 1.02341093 2.6729252 3.868573

.

. 等等

.

将lm的data参数设为dfrm,R就会在这个数据框的各列数据中寻找回归分析所需的各个变量:

代码

> lm(y ~ u + v + w, data=dfrm)

Call:

lm(formula = y ~ u + v + w, data = dfrm)

Coefficients:

(Intercept) u v w

1.4222 1.0359 0.9217 0.7261

End.

来源:数据分析网

  • 我的微信公众号
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: