目录
4.1 相关系数 R / multiple R/coefficient of correlation
5.3.2 公式 (这里算出来的是均方误差,但不是方差,因为是两类数据的比较)
8.1.2 软件判断方法:各种软件自动计算:显著度F significance F
8.2.3 手动方法看是否在 参数预测值是否在:lower 95%~ upper95%范围内
9.1 回归模型的各种指标清楚了,但是参数的误差,标准误差,还有t值是怎么求出来的?
0 目标
- 目标:用EXCEL做一元线性回归的各种参数,手动计算验证EXCEL计算的各个参数的值,自己重新算一遍,了解具体的公式计算过程。
- 为什么要这么做
- 看了这么多讲指标运算公式的,大多数都是推导。但很少见到有自己手动,完全验证一遍这些指标计算公式实操的,我自己试试。
- 目的2个:
- 还能验证自己整理的公式的对错。
- 可以加深对公式的理解
1 构造模型
1.1 构造模型的思路
- 正常思路:(先有我们大脑里的理想值,也就是假设)→先有观测值 →再回归模型→预测值
- 我的构造思路: 先作假一个理想数据(公式生成)→生造观测值(加rand扰动)→再回归模型→预测值
- 为什么要这么搞?
- 这样我自己相当于,先掌握了理想数据=“正确答案”,然后可以比较到底什么样的模拟更接近我这个预设的正确答案。
1.2 具体模型构造的EXCEL公式和过程
- 理想数据
- X:1,2 ...15
- Y: Y=2x+3
- 观测值
- y=y~real+RANDBETWEEN(-3,3)
2 直接用EXCEL画图,然后生成趋势线的方式进行回归分析
见下图
2.1 先选择“观测值Y”的数据,用散点图或者折线图作图
作图格式
- 可以选择连线的散点图,或者折线图
2.2 然后添加趋势线和设置趋势线格式
- 因为做的是一元线性回归,这里记得选择直线
2.3 生成趋势线
生成一个一元函数的趋势线: 直线
- 其中 y=ax+b,具体为y=2.33306x
- a=2.33306
- b=0
- R**2=0.9749
3 使用EXCEL的 数据/数据分析/回归功能
- 基本内容如下
3.1 在EXCEL的菜单里,调出加载项里的分析工具库
文件/选项
3.2 功能入口:数据/数据分析/回归功能
3.3 进行回归时,需要注意2个点
- 1 注意回归面板上,Y值在上面,X值在下面。容易选错
- 2 下面哪些勾选项,做简单回归分析可以不勾
- 3 详细的回归可以都勾选
- 如果是双侧检验,置信度 95%一般可以选上
3.4 回归分析的结果
- 第1部分:“回归统计”
- 第2部分:“方差分析”
- 第3部分:“回归系数相关”
4 逐个手动重算 第1部分:“回归统计”里的几个指标
4.1 相关系数 R / multiple R/coefficient of correlation
4.1.1 公式
- 其中
- x,y是两个变量
- 如果不是特别强调因变量,x,y也可以写成x1,x2
- 相关系数的取值范围[-1,1]
- 越接近1,表示正相关
- 越接近-1,表示负相关
- 接近0,表示不相关
4.1.2 以下是详细计算过程
- 手动计算的和回归分析的R相等
- 求和不要犯低级错误 Σ(x-ave(x))*(y-ave(y)) !=Σ(x-ave(x))*Σ(y-ave(y))
- R=Σ((x-ave(x))*(y-ave(y))) /SQRT(Σ(x-ave(x))^2*Σ(y-ave(y))^2)
4.2 先求 SSE SSR SST 以及OLS,再求R2
这个需要提前看第2部分的内容
- SSE: 残差平方和= Σ(y-y^'')^2
- SSR:回归平方和=Σ(y^''-ave(y))^2
- SST:离差平方和/总体平方和=Σ(y-ave(y))^2
- OLS最小二乘法的=SS=SSE=残差平方和
4.3 决定系数R**2 / R-square
4.3.1 公式
- R**2的具体计算=相关系数R**2
- R**2 公式说明
- R**2 取值范围在[0,1] 之间
- 但是如果是线性回归,必须包含截距项!!!
- SSR越大越好,SSE越小越好
- 因为SSR代表被模型解释的部分越多,SSE是残差无法被解释
- SSR代表被模型解释的部分越多,表示拟合线越接近于真实Y的观察值,误差SSE很小
4.3.2 R2具体计算
R**2的具体计算=相关系数R**2
4.4 调整后的R2
- 修正的R2确实不适合一元线性回归
- K=变量个数
- 只有1个变量是,修正的R2会变小
- 修正的R2看起来确实只适合多元线性回归
4.5 标准误差 SEE
计算公式
- 等于表2中残差SS / 残差df 的平方根
- 越小越好
- 标准误差SEE
- SEE = sqrt(Σ(y - y^'')^² / (n - k - 1))
- SEE = sqrt(SSE / (n - k - 1))
- 并不是 /n
4.6 观测值
观测值=样本数量=15,没什么好说的。
5 逐个手动重算“方差分析”里的几个指标
- df:degree of freedom 自由度
- ss:离均差平方和
- ms :均方
5.1 自由度 DF
详细内容看上次的关于自由度的文章
- 回归分析的df,y=a+bx,因为只有1个自变量,所以df=1
- 残差SSE的df
- 这里面需要确定a 和b两个参数,其中a是截距,而b 是x的参数。
- 因为自由度=n-k, 而SSE=Σ(y-y^'')^2 = Σ(y-(a+bx))^2 ,所以df=n-k=n-2=15-2=13
- 或者用多元线性回归的公式 df=n-k-1=15-1-1=13
- 总计的df=方程的df+样本的df=1+13=14
5.2 关于SS离差的3个类型 SSR, SSE ,SST
见上面的分析
5.3 均方MS
5.3.1 定义
MS是均方
方差分析中的MS是均方(离差平方和除以自由度)
在这里具体是 均方误差
- MS=SS/DF
- 表上,回归分析和残差的MS分别可以这么计算
5.3.2 公式 (这里算出来的是均方误差,但不是方差,因为是两类数据的比较)
- Σ(y - ŷ)²
- 这个是离均差的平方
- 但是不是同一个值的离均差,而是两类数的离均差
- Mean Square Error 均方误差
- MSE = Σ(y - ŷ)²/n 这里n是自由度
- MSE = Σ(y - ŷ)²/df
6 RESIDUAL OUTPUT
6.1 残差= y=y^= 观测值-预测值
7 多个模拟直线比较
- 暂时看略有差别,差别不大
8 一元线性回归模型的F检验 和 t检验
- 首先明确目标
- 这里的假设检验,主体是对一元线性回归模型
- 对模型的假设检验和针对某个参数的假设检验,不是一回事。
- 对一元线性回归模型 y=a+bx 的检验,核心是检验参数b的显著性,理论上b越大越好,至少b不能=0,否则一元线性回归模型就不存在,没意义。
8.1 F检验相关
8.1.1 F值
- F=(SSR/df1) / (SSE/df2)(注意不是SS/SS, 必须是除过自由度的MS)
- 而回归均方MS=SSR/df1 ,df=1,因为只有1个自变量x,而y是因变量
- 而残差均方MS= SSE/df2,df=n-k-1=n-1-1=n-2,其中n是样本数量,而k是自变量的参数数量,一元回归只有1个,而最后那个-1是截距项参数。
- 总体df=df1+df2,暂时这里没啥用
- F=回归均方MS/残差均方MS
- F=(SSA/df1) / (SSE/df2)= 组间波动MS/组内波动MS,对于只有一组样本的情况下,SSA就=SSR。而多组样本情况下,SSA是组间均值和二次均值之间的误差平方和。
- F=1003/8=125.25
8.1.2 软件判断方法:软件EXCEL/spss等自动计算:显著度F significance F
- F值
- Significance F:其实就是概率,就是F值对应的概率p
- p=Significance F:越小说明拟合越好。为什么呢?
- 其实是说:p=Significance F:p越小说明一元线性回归模型拟合越好,也就是拒绝原假设h0
- 而一般情况下,如果想要接受h0假设,比如2个样本相似,则希望F小,P值大,这样就很可能可以接受原假设h0
- 而一般情况下,如果想要拒绝h0假设,比如希望某个参数和0不同,则希望F大,P值小,这样就是小概率事件,这样就很可能可以接受原假设h0
- 因为p越小,越是小概率事件
- 证明原假设h0不对,也就是y=a+bx的x的参数b,b显著的和0不同,也就是y=a+bx一元线性回归模型是显著的。
因为一元线性回归的假设检验里
- 预设原假设h0,一般都是0假设,或者相等假设,也就是假设y=a+bx其中x的参数b=0,也就是假设y和x不存在一元线性关系。
- 所以如果significance F=p 也就是概率,很小,证明这个假设是个小概率事件,那么应该拒绝此h0假设,也就是一元线性回归模型是显著的!y和x之间确实存在线性相关关系。
- Significance F =4.8*10^-8 < 0.05 而且是远小于,说明检验情况较好
- 手动怎么计算这个值,我还不知道,手动只能查表得到一个区间,用于判断,无法得到精确的p值吧?
8.1.3 是否可以手动计算P值?
手动怎么计算这个值,我还不知道,手动只能查表得到一个区间,用于判断,无法得到精确的p值吧?
8.1.4 手动判断方法:查表 取得 F临界值(α,df1,df2)
- 手动方法无法获得具体的significance F=p,也就是无法,但是手动查表
- 根据2个自由度和显著度来查表
- df1=1
- df2=13
- F临界值(α,df1,df2)
- 查表得F临界值=4.67
- 而计算F=125>4.67 ,因此对应的概率一定很小,至少小于显著度5%,所以是小概率事件,要拒绝原假设h0,因此这个线性回归模型是显著的。
8.1.4 总结
- 因为一元线性回归的原假设预设原假设h0,一般都是0假设,或者相等假设,也就是假设y=a+bx其中x的参数b=0,也就是假设y和x不存在一元线性关系。
- 如果是是软件自动计算significance F,F值本身大小不用管
- 只判断 概率P=significance F>α即可接受h0, 证明此模型拟合不好,失败!
- 只判断概率P=significance F<α即可接受h0,证明一元线性回归模型是显著的。
- 如果是手动查表比较F值大小,需要比较计算F值和查表F值的大小
- 只判断 计算所得F值<查表F值即可接受h0,证明此模型拟合不好,失败!
- 而如果F值>查表F值,就要拒绝原假设,证明一元线性回归模型是显著的。
8.2 t检验相关
8.2.1 t Stat
- t Stat:回归系数/标准误差,
- Intercept Coefficients:截距的回归值,X Variable 1 Coefficients:斜率的回归值。
- 截距的t, t=4.52/1.53=2.94
- x的系数的t, t=1.89/0.169=11.19
8.2.2 软件判断方法:T检验的P-value
- T检验的P-value:越小说明拟合越好
- 截距的t, t=4.52/1.53=2.94 ,对应p=0.01<0.025=α/2
- x的系数的t, t=1.89/0.169=11.19, 对应p=4.8*10^-10<0.025=α/2
- 做双边检验,显著度α=0.05,α/2=0.025,明显两个P都小于α/2,可接受h0
8.2.3 手动方法看是否在 参数预测值是否在:lower 95%~ upper95%范围内
- 注意这里看的是参数本身的预测值,不是看T值
- 预测的截距=4.52
- -95%~95%的范围是:1.2~7.84,4.52属于1.2~7.84,也就是-95%~95%的范围内,不是小概率事件
- 预测的x的系数=1.89
- -95%~95%的范围是:1.52~2.25,1.89属于1.52~2.25,也就是-95%~95%的范围内,不是小概率事件
8.2.4 手动方法 查表比较
8.2.5 上面方法总结比较
9 未解决的问题
9.1 回归模型的各种指标清楚了,但是参数的误差,标准误差,还有t值是怎么求出来的?
- 比如一元线性回归模型中,关于y=ax+b,这里面a 和 b 的标准误差是怎么求出来的?
- 网上也有人提出了这样的问题,暂时我没看明白,留着