UA MATH571A R语言回归分析实践 一元回归4 NBA球员的工资

UA MATH571A R语言回归分析实践 一元回归4 NBA球员的工资

上一讲对一元线性回归模型进行了诊断,发现模型主要存在三个问题:

  1. 工资关于名次存在负相关,但可能不是线性关系;
  2. 残差独立同分布,但不是正态分布;并且同方差假设也不成立;
  3. 模型存在replicate,一元线性回归有欠拟合的风险

这一讲针对这些问题给出解决方案,看是否能提高模型的解释力。

Box-Cox变换

Box-Cox变换是作用在被解释变量上的变换,可以描述Y与X之间的非线性关系,需要用到MASS包

require(MASS)

接下来选择Box-Cox变换的参数,但做这个之前需要先对被解释变量做个简单处理,在原始数据中,没有被签约的球员工资数据为0,但Box-Cox变换允许对数变换,所以被解释变量需要是正数,我们简单操作一下把为0的那些工资改成1,

for(i in 1:651){
  if(Y[i] == 0){
    Y[i] = 1
  }
}

然后重新估计一下回归模型来做Box-Cox

> ureg01.lm <- lm(Y~X)
> ureg01.bc <- boxcox(ureg01.lm,lambda=seq(-1, 1, 0.1), interp=F )

在这里插入图片描述
根据这个图,基本认定对数似然最大对应的lambda为1/4,所以回归模型应该修改为
Y 1 / 4 = β 0 + β 1 X + ϵ Y^{1/4} = \beta_0 + \beta_1 X + \epsilon
先对数据做变换,然后重新估计模型

> Ystar <- Y^0.25
> ureg02.lm <- lm(Ystar~X)
> summary(ureg02.lm)

Call:
lm(formula = Ystar ~ X)

Residuals:
    Min      1Q  Median      3Q     Max 
-47.664  -9.330  -2.486  10.569  41.335 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 55.79764    1.02218   54.59   <2e-16 ***
X           -0.47560    0.02649  -17.96   <2e-16 ***
---
Signif. codes:  0***0.001**0.01*0.05.0.1 ‘ ’ 1

Residual standard error: 14.78 on 649 degrees of freedom
Multiple R-squared:  0.3319,	Adjusted R-squared:  0.3309 
F-statistic: 322.4 on 1 and 649 DF,  p-value: < 2.2e-16

主要结果基本不变,现在我们关注的是R方,可以发现改了模型设定后,R方变大了不少,说明之前的线性设定真的是不成立的。但我们对现在的结果也不是很满意,因为工资的变化还是只有33%与名次有关。

Full Model

一元线性回归不行的话,按之前的检验,可能也有欠拟合的原因,我们再试试,在Box-Cox变换之后用full model来估计:

> fmodel02.lm <- lm(Ystar ~ factor(X))
> summary(fmodel02.lm)

Call:
lm(formula = Ystar ~ factor(X))

Residual standard error: 14.84 on 591 degrees of freedom
Multiple R-squared:  0.3868,	Adjusted R-squared:  0.3256 
F-statistic: 6.319 on 59 and 591 DF,  p-value: < 2.2e-16

它的结果比较长,我只把倒数三行放在了这里,可以看到用factor model的话R方会再提升一点,但因为factor model复杂度比一元线性回归高,所以adjusted R方反而会有一点点下降。但是,即使R方有一点点改善,也才只有0.3868。

模型再诊断

我们已经试了所有改进的思路,但是模型解释力最高也才0.3868,接下来我们对Box-Cox变换的结果再做一下诊断,看看还有什么遗留问题。

plot(ureg02.lm$residuals~X)
abline(h=0)

在这里插入图片描述
残差关于X的图,可以发现那个非线性的东西还在,说明它不一定是由Y和X的非线性关系引起的,或者说他们之间的非线性关系的形式在Box-Cox变换能处理的范围之外。以及删失数据依然存在。

> qqnorm(ureg02.lm$residuals)
> shapiro.test(ureg02.lm$residuals)

	Shapiro-Wilk normality test

data:  ureg02.lm$residuals
W = 0.97864, p-value = 3.813e-08

在这里插入图片描述

QQ图的结果虽然看上去要好一点的,但Shapiro检验还是不认可正态分布。

总结

简单总结一下,我们用一元线性回归模型对NBA球员的NBA draft number与工资之间的关系做的探索:

  1. Draft Number越小,工资越高,这个负相关关系是存在并且显著成立的;
  2. 在线性模型的框架下,我们发现Draft Number最多只能解释工资的38.68%,说明有可能存在其他更重要的解释变量;
  3. 线性模型下残差并不服从正态分布,所以除了Spearman秩相关得出的负相关之外,其他所有结果都不一定准确;
  4. 在正态性无法保证的情况下,为了获得稳健的推断,或许可以采用非参/半参模型;
  5. 从残差图可以看出原始数据存在删失,更好的办法是用Tobit模型来分析这样的数据。

猜你喜欢

转载自blog.csdn.net/weixin_44207974/article/details/106249586