在回归分析中,Influence Plot(影响图) 是一种可视化工具,用于识别对回归模型结果影响较大的异常点或高杠杆点(high leverage points)。
✅ 1. 什么是 Influence Plot?
Influence Plot 结合了以下三种统计量,用来衡量每个观测值对回归模型的影响:
统计量 | 含义 |
---|---|
残差(Residuals) | 观测值与预测值之间的差 |
杠杆值(Leverage) | 衡量观测值在自变量空间中的“偏离程度” |
库克距离(Cook’s Distance) | 综合衡量观测值对回归系数的影响程度 |
2. 图的构造(通常由 statsmodels 实现)
X 轴:杠杆值(Leverage)
Y 轴:标准化残差(Studentized Residuals)
气泡大小:Cook's Distance(越大表示该点对模型影响越大)
3. 如何解释 Influence Plot?
高残差 + 高杠杆 + 大气泡:这些点对模型的拟合影响最大,需要特别关注,可能是异常值或错误数据。
高杠杆但残差小:可能只是远离其他数据,但未显著影响模型。
高残差但杠杆小:预测效果差,但未对模型系数有显著影响。
4. Python 示例(使用 statsmodels)
import statsmodels.api as sm import matplotlib.pyplot as plt # 示例数据 data = sm.datasets.get_rdataset("mtcars").data X = data[["hp", "wt"]] y = data["mpg"] X = sm.add_constant(X) # 拟合回归模型 model = sm.OLS(y, X).fit() # 绘制 Influence Plot sm.graphics.influence_plot(model, criterion="cooks") plt.show()
✅ 5. 用途
检查模型中的影响点和异常值。
判断是否应该剔除某些观测值以获得更稳健的模型。
辅助回归诊断和模型改进。
系统当前共有 456 篇文章