R语言与回归分析.doc_第1页
R语言与回归分析.doc_第2页
R语言与回归分析.doc_第3页
R语言与回归分析.doc_第4页
R语言与回归分析.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

R语言与回归分析回归模型是计量里最基础也最常见的模型之一。究其原因,我想是因为在实际问题中我们并不知道总体分布如何,而且只有一组数据,那么试着对数据作回归分析将会是一个不错的选择。一、简单线性回归 简单的线性回归涉及到两个变量:一个是解释变量,通常称为x;另一个是被解释变量,通常称为y。回归会用常见的最小二乘算法拟合线性模型:yi = 0 + 1xi +i其中0和1是回归系数,i表示误差。在R中,你可以通过函数lm()去计算他。Lm()用法如下:lm(formula, data, subset, weights, na.action,method = qr, model = TRUE, x = FALSE, y = FALSE, qr = TRUE,singular.ok = TRUE, contrasts = NULL, offset, .) 参数是formula模型公式,例如y x。公式中波浪号()左侧的是响应变量,右侧是预测变量。函数会估计回归系数0和1,分别以截距(intercept)和x的系数表示。 有三种方式可以实现最小二乘法的简单线性回归,假设数据wage1(可以通过names函数查看数据框各项名称)(1)lm(wage1$wage wage1$educ + wage1$exper)(2)lm (wage educ + exper, data= wage1)(3)attach(wage1) lm(wageeduc+exper)#不要忘记处理完后用detach()解出关联 我们以数据wage1为例,可以看到工资与教育水平的线性关系:运行下列代码:library(foreign)Alm(wageeduc,data=A)Call:lm(formula = wage educ, data = A)Coefficients:(Intercept) educ-0.90490.5414 当然得到这些数据是不够的,我们必须要有足够的证据去证明我们所做的回归的合理性。那么如何获取回归的信息呢? 尝试运行以下代码:result|t|)(Intercept) -0.904850.68497 -1.3210.187educ 0.54136 0.0532510.167 2e-16 *-Signif.codes: 0 * 0.001 * 0.01 * 0.05. 0.1 1Residual standarderror: 3.378 on 524 degrees of freedomMultipleR-squared: 0.1648, AdjustedR-squared: 0.1632F-statistic: 103.4on 1 and 524 DF, p-value: 2.2e-16 解读上述结果,我们不难看出,单从判决系数R-squared上看,回归结果是不理想的,但是,从p值来看,我们还是可以得到回归系数是很显著地(注意,这里的P lm(y u + v+ w) 显然,多元线性回归是简单的线性回归的扩展。可以有多个预测变量,还是用OLS计算多项式的系数。三变量的回归等同于这个线性模型:yi = 0 + 1ui +2vi + 3wi + i 在R中,简单线性回归和多元线性回归都是用lm函数。只要在模型公式的右侧增加变量即可。输出中会有拟合的模型的系数:result1summary(result1)Call:lm(formula = wage educ + exper + tenure, data = A)Residuals: Min1Q Median 3QMax -866.29 -249.23 -51.07189.62 2190.01 Coefficients: Estimate Std.Error t value Pr(|t|)(Intercept) -276.240106.702 -2.589 0.009778 *educ 74.415 6.28711.836 2e-16 *exper 14.892 3.2534.578 5.33e-06 *tenure 8.257 2.4983.306 0.000983 *-Signif.codes: 0 * 0.001 * 0.01 * 0.05. 0.1 1Residual standarderror: 374.3 on 931 degrees of freedomMultipleR-squared: 0.1459, AdjustedR-squared: 0.1431F-statistic: 53 on 3 and 931 DF, p-value: plot(wageeduc,data=A)A$logwageresult1summary(result1)Call:lm(formula =logwage educ + exper + tenure, data = A)Residuals: Min1Q Median3Q Max -2.05802 -0.29645 -0.032650.28788 1.42809Coefficients: Estimate Std. Error t value Pr(|t|)(Intercept) 0.2843600.104190 2.729 0.00656*educ 0.092029 0.00733012.555 2e-16 *exper 0.004121 0.0017232.391 0.01714 *tenure 0.0220670.003094 7.133 3.29e-12 *-Signif.codes: 0 * 0.001 * 0.01 * 0.05. 0.1 1Residual standarderror: 0.4409 on 522 degrees of freedomMultipleR-squared: 0.316, AdjustedR-squared: 0.3121F-statistic: 80.39on 3 and 522 DF, p-value: 2.2e-16 看得出,平稳化后的数据线性性是更加好的。 下面我们来提取回归分析的各项统计数据: 一些统计量和参数都被存储在lm或者summary中output -summary (result1)SSR- deviance(result1)残差平方和;(另一种方法:RSquared - output$r.squared)LL-logLik(result1) #对数似然统计量DegreesOfFreedom-result1$df #自由度Yhat- result1$fitted.values#拟合值向量Resid- result1$residualss-output$sigma #误差标准差的估计值(假设同方差)CovMatrix -s2*output$cov #系数的方差协方差矩阵(与vcov(result1)同)ANOVA-anova(result1)confidentinterval-confint(result1)#回归系数的置信区间,level=0.95effects(result1)#计算正交效应向量(Vector of orthogonal effects )三、检查结果 通过图形我们可以以一种十分直观的办法检测我们的拟合效果:plot(result1) 通过扩展包car中的函数来检测异常值与主

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论