多重共线性里的 x5 变量,挺容易让人误判的。你把x5
加进模型,R²虽然高达 0.95,结果系数不显著,t 值才-0.2,明摆着是没戏。嗯,这时候就得果断剔除。那组y = 0.164 x1 + 0.042 x2
,t 值高,结果也稳定,R²还是 0.94,挺漂亮的一组模型。
你要是经常和回归打交道,推荐你顺手收藏几个代码资源,MATLAB和Python这块都有人帮你封装好了。像这个线性拟合源码,函数直接能跑,带数据和图形输出,响应也快。
共线性问题怎么判断?最常用的就是看相关系数。你可以用Python 的皮尔逊计算法,或者Spearman 等级相关,都挺方便的。数据不是线性关系的时候,Spearman 更适合。
要做逐步回归?MATLAB 版逐步回归功能比较全,自动选变量那块做得还不错。而如果你更习惯SPSS
,也有详细共线性问题的文章,适合快速入门。
建议你建模前,先跑一遍相关系数排序,剔除高度相关的变量。别全靠 R²,t 值才是判断变量有没有用的关键。如果你不确定,就用LTreg.m试试看,直接输出每个变量的 p 值和系数,效率高不少。
如果你用的是金融数据,这个协方差和相关系数的 MATLAB 应用也值得一看,对风险建模蛮有。