为啥一定要用残差图检查你的回归分析?
Response =(Constant + Predictors)+ Error
响应(Response)
= 确定性(Deterministic) + 随机性(Stochastic)
(有时候真是不得不吐槽下,毕竟是外国人发明的现代科学,中文翻译过来难眠有混淆视听之嫌,学术词汇的理解还是看英文更能清晰本质,一会就会聊到Stochastic就明白为什么这么说)
确定性部分(The Deterministic Portion)
随机误差(The Stochastic Error)
残差图(Residual Plots)
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
# 给任务单独分配随机种子
np.random.seed(sum(map(ord
, 'anscombe')))
import seaborn as sns
anscombe = sns.load_dataset('anscombe')
sns.residplot(x='x', y='y'
, data=anscombe.query('dataset == 'I'')
, scatter_kws={'s': 80})
sns.residplot(x='x', y='y' , data=anscombe.query('dataset == 'II'') , scatter_kws={'s': 80})
一个缺失的变量
模型缺少一个变量的高阶项来解释曲率
模型缺少在已经存在的项之间的相互作用项(交叉项)
由此来回溯去修改模型,以期望修改后的残差图是理想中的残差图。
除了上述之外,还有两种预测信息会潜入到了残差中的方式:
残差不应该与另外的变量有所相关。如果你可以用另一个变量预测出此残差图,那么该变量就应该考虑到你的模型当中。那么就可以通过绘制其他变量的残差图,来考察这个问题。
相邻残差(Adjacent residuals)不应该相互关联(残差的自相关性)。如果你可以使用一个残差来预测得到下一个残差,则说明存在一些模型还未捕捉到的可预测信息。通常来说,这种情况涉及时间有序的观察预测。例子就不举了。
Ref:
Regression Analysis Tutorial and Examples
http://blog.minitab.com/blog/adventures-in-statistics-2/regression-analysis-tutorial-and-examples
Why You Need to Check Your Residual Plots for Regression Analysis: Or, To Err is Human, To Err Randomly is Statistically Divine
http://blog.minitab.com/blog/adventures-in-statistics-2/why-you-need-to-check-your-residual-plots-for-regression-analysis