R 如何估计避免多重共线性的lm伪回归?

R 如何估计避免多重共线性的lm伪回归?,r,model,linear-regression,lm,dummy-variable,R,Model,Linear Regression,Lm,Dummy Variable,我在虚拟变量上有一个lm回归问题。我想计算出季节性影响(季节性)随着时间的推移而变化。为此,我建立了以下回归模型: AT.trendinseason.lm <- lm(DTR.detrended~0+dum.jan+dum.feb+dum.mar+dum.apr+dum.may+dum.jun+dum.jul+dum.aug+dum.sep+dum.oct+dum.nov+dum.dec+dum.jan*t+dum.feb*t+dum.mar*t+dum.apr*t+dum.may*t+d

我在虚拟变量上有一个lm回归问题。我想计算出季节性影响(季节性)随着时间的推移而变化。为此,我建立了以下回归模型:

AT.trendinseason.lm <- lm(DTR.detrended~0+dum.jan+dum.feb+dum.mar+dum.apr+dum.may+dum.jun+dum.jul+dum.aug+dum.sep+dum.oct+dum.nov+dum.dec+dum.jan*t+dum.feb*t+dum.mar*t+dum.apr*t+dum.may*t+dum.jun*t+dum.jul*t+dum.aug*t+dum.sep*t+dum.oct*t+dum.nov*t+dum.dec*t)
AT.trendinseason.lm | t |)
杜姆1月-2.495e+00 1.121e-01-22.262<2e-16***
dum.feb-1.527e+00 1.176e-01-12.983<2e-16***
dum.mar 2.493e-01 1.124e-01 2.218 0.026552*
dum.apr 1.266e+00 1.144e-01 11.073<2e-16***
dum.may 1.785e+00 1.127e-01 15.844<2e-16***
dum.jun 1.597e+00 1.147e-01 13.926<2e-16***
dum.jul 1.882e+00 1.131e-01 16.640<2e-16***
dum.aug 1.544e+00 1.126e-01 13.721<2e-16***
dum.sep 1.335e+00 1.134e-01 11.780<2e-16***
杜姆10月8日306e-02 1.117e-01 0.744 0.456961
杜姆11月-2.545e+00 1.137e-01-22.390<2e-16***
dum.dec-3.101e+00 1.119e-01-27.703<2e-16***
t-1.343e-05 5.431e-06-2.473 0.013389*
dum.jan:t-8.571e-06 7.681e-06-1.116 0.26444
dum.feb:t-3.094e-06 7.866e-06-0.3930.694090
杜姆三月:t 5.346e-06 7.681e-06 0.696 0.486406
杜马4月:t 3.850e-05 7.744e-06 4.971 6.69e-07***
杜姆梅:t 2.748e-05 7.681e-06 3.578 0.000346***
dum.jun:t 2.959e-05 7.744e-06 3.821 0.000133***
七月杜马:t 3.384e-05 7.698e-06 4.396 1.10e-05***
杜马8月:t 4.494e-05 7.711e-06 5.828 5.67e-09***
dum.sep:t-1.921e-06 7.744e-06-0.248 0.804105
10月议会:t-1.526e-05 7.681e-06-1.987 0.046943*
11月杜马:t 8.864e-07 7.744e-06 0.114 0.908876
dum.dec:不,不,不
---
签名。代码:0'***'0.001'***'0.01'*'0.05'.'0.1''1
剩余标准误差:35745自由度上的3.093
倍数R平方:0.3145,调整后的R平方:0.314
F-统计量:24和35745 DF上的683.2,p-值:<2.2e-16
但情况是,我知道多重共线性不应该有问题。R仍然省略了我的变量。有没有办法阻止R这样做

我想遵循的模型来自我读到的一篇论文,在那里它似乎是可行的:

这是我想采取的方法,但似乎不起作用


请帮忙

我解决了这个问题,这完全取决于我如何编写交互术语。似乎R在*符号上有点问题。我把*换成了:结果成功了。我不知道为什么,但感谢上帝,我找到了解决办法。新守则是:

AT.trendinseason.lm <- lm(DTR.detrended~0+dum.jan+dum.feb+dum.mar+dum.apr+dum.may+dum.jun+dum.jul+dum.aug+dum.sep+dum.oct+dum.nov+dum.dec+dum.jan:t+dum.feb:t+dum.mar:t+dum.apr:t+dum.may:t+dum.jun:t+dum.jul:t+dum.aug:t+dum.sep:t+dum.oct:t+dum.nov:t+dum.dec:t)

AT.trendinseason.lm | t |)
杜姆1月-2.495e+00 1.121e-01-22.262<2e-16***
dum.feb-1.527e+00 1.176e-01-12.983<2e-16***
dum.mar 2.493e-01 1.124e-01 2.218 0.026552*
dum.apr 1.266e+00 1.144e-01 11.073<2e-16***
dum.may 1.785e+00 1.127e-01 15.844<2e-16***
dum.jun 1.597e+00 1.147e-01 13.926<2e-16***
dum.jul 1.882e+00 1.131e-01 16.640<2e-16***
dum.aug 1.544e+00 1.126e-01 13.721<2e-16***
dum.sep 1.335e+00 1.134e-01 11.780<2e-16***
杜姆10月8日306e-02 1.117e-01 0.744 0.456961
杜姆11月-2.545e+00 1.137e-01-22.390<2e-16***
dum.dec-3.101e+00 1.119e-01-27.703<2e-16***
dum.jan:t-2.200e-05 5.431e-06-4.052 5.10e-05***
dum.feb:t-1.653e-05 5.691e-06-2.904 0.003685**
杜马三月:t-8.087e-06 5.431e-06-1.489 0.136489
杜马4月:t 2.507e-05 5.521e-06 4.540 5.64e-06***
5月议会:t 1.405e-05 5.431e-06 2.587 0.009688**
dum.jun:t 1.616e-05 5.521e-06 2.927 0.003422**
7月议会:t 2.041e-05 5.455e-06 3.741 0.000184***
杜马8月:t 3.150e-05 5.474e-06 5.755 8.73e-09***
议会九月:t-1.535e-05 5.521e-06-2.7810.005420**
10月议会:t-2.869e-05 5.431e-06-5.283 1.28e-07***
11月议会:t-1.255e-05 5.521e-06-2.273 0.023056*
议会决议:t-1.343e-05 5.431e-06-2.473 0.013389*
---
签名。代码:0'***'0.001'***'0.01'*'0.05'.'0.1''1
剩余标准误差:35745自由度上的3.093
倍数R平方:0.3145,调整后的R平方:0.314
F-统计量:24和35745 DF上的683.2,p-值:<2.2e-16

无论如何,你现在知道解决这个问题的方法了。我希望它能帮助别人

你有没有试过将变量居中?你的意思是什么?居中是从每次观察中减去变量的平均值。因此,创建零均值。您可以在这里查看有关z分数和居中的更多信息
AT.trendinseason.lm <- lm(DTR.detrended~0+dum.jan+dum.feb+dum.mar+dum.apr+dum.may+dum.jun+dum.jul+dum.aug+dum.sep+dum.oct+dum.nov+dum.dec+dum.jan:t+dum.feb:t+dum.mar:t+dum.apr:t+dum.may:t+dum.jun:t+dum.jul:t+dum.aug:t+dum.sep:t+dum.oct:t+dum.nov:t+dum.dec:t)

Call:
lm(formula = DTR.detrended ~ 0 + dum.jan + dum.feb + dum.mar + 
    dum.apr + dum.may + dum.jun + dum.jul + dum.aug + dum.sep + 
    dum.oct + dum.nov + dum.dec + dum.jan:t + dum.feb:t + dum.mar:t + 
    dum.apr:t + dum.may:t + dum.jun:t + dum.jul:t + dum.aug:t + 
    dum.sep:t + dum.oct:t + dum.nov:t + dum.dec:t)

Residuals:
    Min      1Q  Median      3Q     Max 
-9.4047 -2.2737 -0.3229  2.0987 18.9906 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
dum.jan   -2.495e+00  1.121e-01 -22.262  < 2e-16 ***
dum.feb   -1.527e+00  1.176e-01 -12.983  < 2e-16 ***
dum.mar    2.493e-01  1.124e-01   2.218 0.026552 *  
dum.apr    1.266e+00  1.144e-01  11.073  < 2e-16 ***
dum.may    1.785e+00  1.127e-01  15.844  < 2e-16 ***
dum.jun    1.597e+00  1.147e-01  13.926  < 2e-16 ***
dum.jul    1.882e+00  1.131e-01  16.640  < 2e-16 ***
dum.aug    1.544e+00  1.126e-01  13.721  < 2e-16 ***
dum.sep    1.335e+00  1.134e-01  11.780  < 2e-16 ***
dum.oct    8.306e-02  1.117e-01   0.744 0.456961    
dum.nov   -2.545e+00  1.137e-01 -22.390  < 2e-16 ***
dum.dec   -3.101e+00  1.119e-01 -27.703  < 2e-16 ***
dum.jan:t -2.200e-05  5.431e-06  -4.052 5.10e-05 ***
dum.feb:t -1.653e-05  5.691e-06  -2.904 0.003685 ** 
dum.mar:t -8.087e-06  5.431e-06  -1.489 0.136489    
dum.apr:t  2.507e-05  5.521e-06   4.540 5.64e-06 ***
dum.may:t  1.405e-05  5.431e-06   2.587 0.009688 ** 
dum.jun:t  1.616e-05  5.521e-06   2.927 0.003422 ** 
dum.jul:t  2.041e-05  5.455e-06   3.741 0.000184 ***
dum.aug:t  3.150e-05  5.474e-06   5.755 8.73e-09 ***
dum.sep:t -1.535e-05  5.521e-06  -2.781 0.005420 ** 
dum.oct:t -2.869e-05  5.431e-06  -5.283 1.28e-07 ***
dum.nov:t -1.255e-05  5.521e-06  -2.273 0.023056 *  
dum.dec:t -1.343e-05  5.431e-06  -2.473 0.013389 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 3.093 on 35745 degrees of freedom
Multiple R-squared:  0.3145,    Adjusted R-squared:  0.314 
F-statistic: 683.2 on 24 and 35745 DF,  p-value: < 2.2e-16