[R] Coefficients for lagged plm model variables not calculated
humball
j.mcnamara09 at imperial.ac.uk
Thu Oct 6 22:31:15 CEST 2011
Hello,
So I am afraid I am having a recurring problem that I just can't figure out.
I am using the plm package to conduct a panel analysis - although I am not
sure if the problem is arising as a result of the plm package or something
more general.
I am trying to run a fixed effects model with effects over time and
individual. The model has various lags, and the problem is that these lags
do not seem to always be taken into account when the plm model is calculated
(i.e no coefficients are calculated for some of the lagged regressors when
>summary(plm.object) is called).
I have used exactly the same ".txt" file before, with exactly the same code,
bar the name of the model objects, successfully. If I use <lm> instead of
<plm> it also will usually take into account the lagged regressors when
producing a <summary(model.object).
The code I am using is:
> b<-plm.data(b,index=c("E","M"))
> b.fetw<-plm(B~lag(B,k=1)+Ma+lag(Ma,k=1)+Pa+lag(Pa,k=1)+Ya+lag(Ya,k=1)+F+lag(F,k=1)+CS+R+lag(R,k=1)+G+I,
> data=b, model="within", effect="twoways")
> summary(b.fetw)
Twoways effects Within Model
Call:
plm(formula = B ~ lag(B, k = 1) + Ma + lag(Ma, k = 1) + Pa +
lag(Pa, k = 1) + Ya + lag(Ya, k = 1) + F + lag(F, k = 1) +
CS + R + lag(R, k = 1) + G + I, data = b, effect = "twoways",
model = "within")
Unbalanced Panel: n=7, T=146-152, N=1041
Residuals :
Min. 1st Qu. Median Mean 3rd Qu. Max.
-7150.00 -724.00 -73.00 -1.29 626.00 18100.00
Coefficients :
Estimate Std. Error t-value Pr(>|t|)
lag(B, k = 1) 3.7260e-01 3.3224e-02 11.2145 < 2.2e-16 ***
Ma 1.9957e+12 1.7898e+13 0.1115 0.911242
lag(Ma, k = 1) -2.5335e+00 8.7506e-01 -2.8953 0.003883 **
Pa 9.8872e+11 4.2581e+13 0.0232 0.981480
Ya -4.0497e+12 4.8527e+13 -0.0835 0.933511
F -3.9471e+12 1.3589e+13 -0.2905 0.771531
CS -4.5666e+09 1.3941e+10 -0.3276 0.743321
R 1.8369e+13 3.8520e+14 0.0477 0.961976
G -8.0416e+13 1.8930e+14 -0.4248 0.671086
I 2.9025e+15 9.8887e+15 0.2935 0.769195
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Total Sum of Squares: 3210200000
Residual Sum of Squares: 2794400000
F-statistic: 12.9582 on 10 and 871 DF, p-value: < 2.22e-16
#Now the model seems to have been read correctly, but there are no
coefficients for lags of "Pa", "Ya", "F" or "R"
I considered whether I need to convert all my data into <ts> data and then
compile it with ts.union to create a time series data frame in case there
was a problem with using the <lag> operator on my data frame, but my panel
entities are not time series data so this approach seemed flawed.
I have also used dynformula but this also seemed to lead to the same
outcome.
If on the other hand I used a simple linear model, there was no problem.
Example:
> b.fetw<-lm(B~lag(B,k=1)+Ma+lag(Ma,k=1)+Pa+lag(Pa,k=1)+Ya+lag(Ya,k=1)+F+lag(F,k=1)+CS+R+lag(R,k=1)+G+I,data=b)
> summary(b.fetw)
Call:
lm(formula = B ~ lag(B, k = 1) + Ma + lag(Ma, k = 1) + Pa + lag(Pa,
k = 1) + Ya + lag(Ya, k = 1) + F + lag(F, k = 1) + CS + R +
lag(R, k = 1) + G + I, data = b)
Residuals:
Min 1Q Median 3Q Max
-8.802e-12 -6.201e-13 -2.103e-13 1.976e-13 2.682e-10
Coefficients: (5 not defined because of singularities)
Estimate Std. Error t value Pr(>|t|)
(Intercept) -2.734e-11 1.715e-12 -1.595e+01 <2e-16 ***
lag(B, k = 1) 1.000e+00 5.859e-17 1.707e+16 <2e-16 ***
Ma -1.274e-16 2.416e-16 -5.270e-01 0.598
lag(Ma, k = 1) NA NA NA NA
Pa -3.583e-16 3.419e-16 -1.048e+00 0.295
lag(Pa, k = 1) NA NA NA NA
Ya 4.492e-16 5.023e-16 8.940e-01 0.371
lag(Ya, k = 1) NA NA NA NA
F 2.251e-16 1.072e-16 2.099e+00 0.036 *
lag(F, k = 1) NA NA NA NA
CS -2.294e-20 1.378e-19 -1.660e-01 0.868
R -1.001e-15 2.933e-15 -3.410e-01 0.733
lag(R, k = 1) NA NA NA NA
G 1.763e-16 1.561e-15 1.130e-01 0.910
I 1.677e-14 8.304e-14 2.020e-01 0.840
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
It was only this afternoon, that I swear I was using the same code, and the
same .txt file and having no problem!! I'm sure the answer is right in front
of me, but I have run out of ideas.
If anyone had any thoughts that may shed some light on this I would be most
grateful.
An example of an extract from my data is below.
There are sporadic NA values in the Q and B columns. All other columns are
filled.
M is my time variable
E are my entities (Q1 - Q2)
Sorry if it looks a bit messy in copy /paste!
M E Q B Ma Ya Pa F CS G R I
12 Q1 1.038461538 13915.3466 2280 2760 1593 13885 0 0 5.1 2.5
13 Q1 0.88 15871.51088 2194 2711 1279 17658 0 -16.76 100.9 2.5
14 Q1 1.333333333 16374.10791 2344 2857 1373 14469 0 -26.88 49 2.5
15 Q1 0.545454545 15907.40383 2770 3029 1194 13142 0 -56.17 53.8 2.5
16 Q1 0.95 17681.04616 3242 2802 1601 14545 0 -19.48 120 2.5
17 Q1 1.136363636 13422.43498 4444 3456 1811 16460 0 -30.76 286.5 2.5
18 Q1 1.384615385 15766.59589 4642 3090 2164 14604 0 -20.66 129.9 2.5
21 Q1 1.409090909 14014.20695 3458 2414 1453 12694 2920873 -65.79 21.6
167 Q2 3.777777778 11630.12367 2153 3229 4196 12605 0 -93.83 155.1 -1.25
168 Q2 4.352941176 11683.55864 1774 3192 3374 9886 0 -79.73 136.6 -1.25
171 Q2 NA NA 1394 1630 1948 9083 5308514 102.92 115.6 -1.25
172 Q2 5.315789474 13324.71911 1308 1762 1830 10341 0 -3.54 3.7 1.25
173 Q2 3.105263158 12577.84126 1313 1809 1562 9132 0 -15.99 80.2 1.25
174 Q2 1 15844.28398 1332 1750 1508 9606 0 73.94 72.2 1.25
175 Q2 2.75 13379.67057 1286 1846 1451 8781 0 51.86 111.8 1.25
Thank you!
Note: For background, I am running this as part of a 2SLS analysis. This is
one of the reduced equations and I am hoping to extract values of Bhat to
feed back into the main structural equations. I am also having a similar
problem with the other reduced equation (they are part of a two-equation
system of simultaneous equations).
--
View this message in context: http://r.789695.n4.nabble.com/Coefficients-for-lagged-plm-model-variables-not-calculated-tp3879867p3879867.html
Sent from the R help mailing list archive at Nabble.com.
More information about the R-help
mailing list