Sumber Data: Grunfeld
data("Grunfeld", package = "plm")
Grunfeld %>% str
## 'data.frame': 200 obs. of 5 variables:
## $ firm : int 1 1 1 1 1 1 1 1 1 1 ...
## $ year : int 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 ...
## $ inv : num 318 392 411 258 331 ...
## $ value : num 3078 4662 5387 2792 4313 ...
## $ capital: num 2.8 52.6 156.9 209.2 203.4 ...
Grunfeld %>%
select(year, firm) %>%
table()
## firm
## year 1 2 3 4 5 6 7 8 9 10
## 1935 1 1 1 1 1 1 1 1 1 1
## 1936 1 1 1 1 1 1 1 1 1 1
## 1937 1 1 1 1 1 1 1 1 1 1
## 1938 1 1 1 1 1 1 1 1 1 1
## 1939 1 1 1 1 1 1 1 1 1 1
## 1940 1 1 1 1 1 1 1 1 1 1
## 1941 1 1 1 1 1 1 1 1 1 1
## 1942 1 1 1 1 1 1 1 1 1 1
## 1943 1 1 1 1 1 1 1 1 1 1
## 1944 1 1 1 1 1 1 1 1 1 1
## 1945 1 1 1 1 1 1 1 1 1 1
## 1946 1 1 1 1 1 1 1 1 1 1
## 1947 1 1 1 1 1 1 1 1 1 1
## 1948 1 1 1 1 1 1 1 1 1 1
## 1949 1 1 1 1 1 1 1 1 1 1
## 1950 1 1 1 1 1 1 1 1 1 1
## 1951 1 1 1 1 1 1 1 1 1 1
## 1952 1 1 1 1 1 1 1 1 1 1
## 1953 1 1 1 1 1 1 1 1 1 1
## 1954 1 1 1 1 1 1 1 1 1 1
Model Fixed-Effect Two-Way (Within): LSDV
fe_model <- plm(inv ~ value + capital, data = Grunfeld,
index = c("firm", "year"),
effect = "twoways", model = "within")
summary(fe_model)
## Twoways effects Within Model
##
## Call:
## plm(formula = inv ~ value + capital, data = Grunfeld, effect = "twoways",
## model = "within", index = c("firm", "year"))
##
## Balanced Panel: n = 10, T = 20, N = 200
##
## Residuals:
## Min. 1st Qu. Median 3rd Qu. Max.
## -162.6094 -19.4710 -1.2669 19.1277 211.8420
##
## Coefficients:
## Estimate Std. Error t-value Pr(>|t|)
## value 0.117716 0.013751 8.5604 6.653e-15 ***
## capital 0.357916 0.022719 15.7540 < 2.2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Total Sum of Squares: 1615600
## Residual Sum of Squares: 452150
## R-Squared: 0.72015
## Adj. R-Squared: 0.67047
## F-statistic: 217.442 on 2 and 169 DF, p-value: < 2.22e-16
## [1] "coefficients" "vcov" "residuals" "df.residual" "formula"
## [6] "model" "assign" "args" "aliased" "call"
fixef(fe_model, effect = "individual")
## 1 2 3 4 5 6 7 8
## -86.9002 120.1540 -222.1310 8.4536 -92.3388 15.9884 -35.4336 -19.4097
## 9 10
## -56.6827 39.9369
fixef(fe_model, effect = "time")
## 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944
## -86.90 -106.10 -127.59 -126.13 -156.37 -131.14 -105.70 -108.04 -129.88 -130.00
## 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954
## -142.58 -118.07 -126.29 -130.62 -160.40 -162.80 -149.38 -151.53 -154.62 -180.43
Model Random-Effect Two-Way : Metode WALHUS
## Misalnya 10 perusahaan (firm) merupakan sampel acak dari populasi perusahaan
## Ini merupakan alasan penggunaan REM
re_model1 <- plm(inv ~ value + capital, data = Grunfeld,
index = c("firm", "year"),
effect = "twoways", model = "random",
random.method ="walhus")
summary(re_model1)
## Twoways effects Random Effect Model
## (Wallace-Hussain's transformation)
##
## Call:
## plm(formula = inv ~ value + capital, data = Grunfeld, effect = "twoways",
## model = "random", random.method = "walhus", index = c("firm",
## "year"))
##
## Balanced Panel: n = 10, T = 20, N = 200
##
## Effects:
## var std.dev share
## idiosyncratic 3188.06 56.46 0.359
## individual 5685.23 75.40 0.641
## time 0.00 0.00 0.000
## theta: 0.8349 (id) 0 (time) 0 (total)
##
## Residuals:
## Min. 1st Qu. Median 3rd Qu. Max.
## -181.7595 -22.3727 5.9119 18.7001 254.1129
##
## Coefficients:
## Estimate Std. Error z-value Pr(>|z|)
## (Intercept) -57.522213 25.012301 -2.2998 0.02146 *
## value 0.109703 0.010147 10.8113 < 2e-16 ***
## capital 0.307286 0.017283 17.7795 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Total Sum of Squares: 2438400
## Residual Sum of Squares: 559450
## R-Squared: 0.77057
## Adj. R-Squared: 0.76824
## Chisq: 661.637 on 2 DF, p-value: < 2.22e-16
## (Intercept) value capital
## (Intercept) 625.61518163 -9.369569e-02 -1.317051e-02
## value -0.09369569 1.029635e-04 -6.404663e-05
## capital -0.01317051 -6.404663e-05 2.987080e-04
## var std.dev share
## idiosyncratic 3188.06 56.46 0.359
## individual 5685.23 75.40 0.641
## time 0.00 0.00 0.000
## theta: 0.8349 (id) 0 (time) 0 (total)
Model Random-Effect Two-Way: Metode AMEMIYA
## Misalnya 10 perusahaan (firm) merupakan sampel acak dari populasi perusahaan
## Ini merupakan alasan penggunaan REM
re_model2 <- plm(inv ~ value + capital, data = Grunfeld,
index = c("firm", "year"),
effect = "twoways", model = "random",
random.method ="amemiya")
summary(re_model2)
## Twoways effects Random Effect Model
## (Amemiya's transformation)
##
## Call:
## plm(formula = inv ~ value + capital, data = Grunfeld, effect = "twoways",
## model = "random", random.method = "amemiya", index = c("firm",
## "year"))
##
## Balanced Panel: n = 10, T = 20, N = 200
##
## Effects:
## var std.dev share
## idiosyncratic 2644.13 51.42 0.256
## individual 7452.02 86.33 0.721
## time 243.78 15.61 0.024
## theta: 0.868 (id) 0.2787 (time) 0.2776 (total)
##
## Residuals:
## Min. 1st Qu. Median 3rd Qu. Max.
## -176.9062 -18.0431 3.2697 17.1719 234.1735
##
## Coefficients:
## Estimate Std. Error z-value Pr(>|z|)
## (Intercept) -63.767791 29.851537 -2.1362 0.03267 *
## value 0.111386 0.010909 10.2102 < 2e-16 ***
## capital 0.323321 0.018772 17.2232 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Total Sum of Squares: 2066800
## Residual Sum of Squares: 518200
## R-Squared: 0.74927
## Adj. R-Squared: 0.74673
## Chisq: 588.717 on 2 DF, p-value: < 2.22e-16
## (Intercept) value capital
## (Intercept) 891.11427317 -1.094987e-01 -2.189549e-02
## value -0.10949874 1.190113e-04 -6.968237e-05
## capital -0.02189549 -6.968237e-05 3.524041e-04
## var std.dev share
## idiosyncratic 2644.13 51.42 0.256
## individual 7452.02 86.33 0.721
## time 243.78 15.61 0.024
## theta: 0.868 (id) 0.2787 (time) 0.2776 (total)
Model Random-Effect Two-Way: Metode SWAR (default di R)
## Misalnya 10 perusahaan (firm) merupakan sampel acak dari populasi perusahaan
## Ini merupakan alasan penggunaan REM
re_model3 <- plm(inv ~ value + capital, data = Grunfeld,
index = c("firm", "year"),
effect = "twoways", model = "random",
random.method ="swar")
summary(re_model3)
## Twoways effects Random Effect Model
## (Swamy-Arora's transformation)
##
## Call:
## plm(formula = inv ~ value + capital, data = Grunfeld, effect = "twoways",
## model = "random", random.method = "swar", index = c("firm",
## "year"))
##
## Balanced Panel: n = 10, T = 20, N = 200
##
## Effects:
## var std.dev share
## idiosyncratic 2675.43 51.72 0.274
## individual 7095.25 84.23 0.726
## time 0.00 0.00 0.000
## theta: 0.864 (id) 0 (time) 0 (total)
##
## Residuals:
## Min. 1st Qu. Median 3rd Qu. Max.
## -177.1700 -19.7576 4.6048 19.4676 252.7596
##
## Coefficients:
## Estimate Std. Error z-value Pr(>|z|)
## (Intercept) -57.865377 29.393359 -1.9687 0.04899 *
## value 0.109790 0.010528 10.4285 < 2e-16 ***
## capital 0.308190 0.017171 17.9483 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Total Sum of Squares: 2376000
## Residual Sum of Squares: 547910
## R-Squared: 0.7694
## Adj. R-Squared: 0.76706
## Chisq: 657.295 on 2 DF, p-value: < 2.22e-16
## (Intercept) value capital
## (Intercept) 863.969562695 -1.015487e-01 -9.508997e-03
## value -0.101548716 1.108356e-04 -6.644528e-05
## capital -0.009508997 -6.644528e-05 2.948426e-04
## var std.dev share
## idiosyncratic 2675.43 51.72 0.274
## individual 7095.25 84.23 0.726
## time 0.00 0.00 0.000
## theta: 0.864 (id) 0 (time) 0 (total)
Uji Hausman : REM vs FEM
## H0: ada korelasi (REM)
## H1: tidak ada korelasi (FEM)
##
## Atau versi lain:
##
## H0: REM konsisten dan efisien
## H1: REM tidak konsisten, sehingga pilih FEM
phtest(fe_model, re_model1)
##
## Hausman Test
##
## data: inv ~ value + capital
## chisq = 14.148, df = 2, p-value = 0.0008466
## alternative hypothesis: one model is inconsistent
phtest(fe_model, re_model2)
##
## Hausman Test
##
## data: inv ~ value + capital
## chisq = 8.9626, df = 2, p-value = 0.01132
## alternative hypothesis: one model is inconsistent
phtest(fe_model, re_model3)
##
## Hausman Test
##
## data: inv ~ value + capital
## chisq = 13.46, df = 2, p-value = 0.001194
## alternative hypothesis: one model is inconsistent