线性回归分析

来源:互联网 发布:图解java多线程 pdf 编辑:程序博客网 时间:2024/04/30 08:59
本文转自http://blog.sina.com.cn/s/blog_70f632090101bp8u.html点击打开链接

先来介绍线性回归定义,本人较懒,直接引用百度百科的解释。
在统计学中,线性回归(Linear Regression)是利用称为线性回归方程的最小平方函数对一个或多个自变量因变量之间关系进行建模的一种回归分析。这种函数是一个或多个称为回归系数的模型参数的线性组合。只有一个自变量的情况称为简单回归,大于一个自变量情况的叫做多元回归。(这反过来又应当由多个相关的因变量预测的多元线性回归区别,[引文需要],而不是一个单一的标量变量。)

线性回归分析主要有两大用途,他们为:
1.预测:线性回归可以用来对观测数据集的和X的值拟合出一个预测模型。当完成这样一个模型以后,对于一个新增的X值,在没有给定与它相配对的y的情况下,可以用这个拟合过的模型预测出一个y值。(百度百科)
2.相关强度:给定一个变量y和一些变量X1,...,Xp,这些变量有可能与y相关,线性回归分析可以用来量化y与Xj之间相关性的强度,评估出与y不相关的Xj,并识别出哪些Xj的子集包含了关于y的冗余信息。

首先我们先看看回归分析的假设,我们在随后的分析中会用到这些假设。他们分别为:
1.独立性:自变量相互独立,没有相关性
2.同方差性:对自变量的所有观测值,随机误差项均有相同的方差
3.正态性:随机误差项服从正态分布。

OK,我们开始建立线性回归模型进行预测。
这次的要预测的内容是:利用上市公司当年公开的财务指标对来年的盈利状况进行预测。本次案例随机抽取了深市和沪市02年和03年各500个样本,对上市公司的净资产收益率(return on equity ROE)进行预测。(案例内容,莫吐槽)。
先来看看我们有哪些变量:
因变量:下一年的净资产收益率(ROE,也是我们要预测的变量)
自变量:1.ROEt:当年净资产收益率
        2.ATO: 资产周转率 asset turnover ratio 
        3.LEV: 债务资本比率 debt to asset ratio 反映公司基本债务状况
        4.PB: 市倍率 price to book ratio 反映公司预期未来成长率
        5.ARR: 应收账款 / 主营业务收入 account receivableover total income反映公司的收入质量
        6.PM: 主营业务利润 / 主营业务收入 profit margin 反映公司利润状况
        7.GROWTH: 主营业务增长率 sales growth rate 反映公司已实现的当年增长率
        8.INV: 存货 / 资产总计 inventory to asset ratio 反映公司的存货状况
        9.ASSET: (对数) 资产总计 log-transformed asset 反映公司的规模

建模第一步,数据探索。
建模之前,我们要熟悉一下整体数据的情况,看是否需要标准化处理。下图为数据情况。
R学习日记——线性回归分析然后进行数据探索,观察这些数据的均值、中位数等情况。
R学习日记——线性回归分析第三,进行相关分析,看看各自变量间是否独立。
R学习日记——线性回归分析这时会发现,ROEt与因变量ROE有强相关性(吼吼,但是与其他自变量没有相关性)
>plot(a1$ROEt,a1$ROE)
R学习日记——线性回归分析
第二,开始初步建模,并检验模型(检验模型的三个假设,前文已经验证了一个)。
1.初步建模。
R学习日记——线性回归分析通过F检验,发现初步建模的模型线性关系显著。但从T检验发现,只有ROEt、LEV和GROWTH三个自变量与因变量线性关系较为显著(注意,并不是说其余字段可以剔除)。
2.模型诊断,即显著性检验。
>par(mfrow = c(2,2))    # 设置画图为 2x2 的格式 
>plot(lm1,which=c(1:4)) # 画出 lm1 中对应于模型检验的 4 张图, 包括残差图(自变量随机误差项是否同方差)、QQ图(检验随机误差项是否正态分布)和Cook距离图(检验异常值) 
R学习日记——线性回归分析
从上图分析得出,模型符合假设,但47号数据是异常数据,应以剔除。
>a1=a1(-47)
剔除后模型拟合效果及检验:
>lm2=lm(ROE~ROEtATO+PM+LEV+GROWTH+PB+ARR+INV+ASSET,data=a1)
>summary(lm2)
R学习日记——线性回归分析R学习日记——线性回归分析
第三,检验自变量多重共线性(实际当中我很少考虑,呵呵,偷工减料了)
通过方差膨胀因子检验。定义容忍度的倒数,VIF越大,显示共线性越严重。经验判断方法表明:当0<VIF<10,不存在多重共线性;当10≤VIF<100,存在较强的多重共线性;当VIF≥100,存在严重多重共线性。
R学习日记——线性回归分析根据数据发现,各个自变量的VIF都在10以内,没有多重共线性问题。模型检验结束。

再给一个R中线性回归选择变量的方法。通过AIC和BIC选择。
AIC 方法比较保守,其中 p 为自变量个数, 与 RSS 成反比。使 AIC 达到最小的模型是最优的。
R学习日记——线性回归分析
BIC 相对不那么保守,因此保留的变量可能会比较少。
R学习日记——线性回归分析R学习日记——线性回归分析R学习日记——线性回归分析第四,模型建立完毕,我们进行模型的效果检验及各个模型之间的效果比对。
2003年数据为检验数据,可以用如下方法对数据进行准备。
R学习日记——线性回归分析建立模型机效果比对。
R学习日记——线性回归分析
0 0
原创粉丝点击