Idea
Fixed effects regression is one of those things that we don’t necessarily need another package to do. We could do it ourselves with the standard linear model tools, either in R or Stata. Hence, we should set the bar pretty high for a package that we use for fixed effect regression package. It should contribute a lot to our productivity, otherwise why bother learning it?
Rolling it ourselves
Remember from class that doing the “within” fixed effects estimator is the same as running OLS with dummy variables for each group id. So we can definitely do that ourselves.
The data that I’ll use for this example is the wage panel data from your problem set. I’ll filter out a couple years.
library(tidyverse)
library(haven)
data <-
read_dta(system.file("wagepan.dta", package = "metrics.in.r")) %>%
filter(year < 1983)
The group id is the variable nr
and the year ID is
year
. Let’s estimate the two-way fixed effects model
\[ lwage_{it} = \beta_1 + \beta_2 union_{it} + \delta_i + \delta_t + u_{it} \]
In other words, we care about the returns to union membership in percentage terms, controlling for unobserved heterogeneity across years and individuals.
Categorical variables in R are called “factors.” If we put them in
the regression formula, then R will create dummy variables for the
actual regression. Hence, let’s convert year
and
nr
to factors in our formula and estimate this model via
OLS:
##
## Call:
## lm(formula = lwage ~ union + as_factor(nr) + as_factor(year),
## data = data)
##
## Coefficients:
## (Intercept) union as_factor(nr)17
## 1.3266008 0.1181125 0.1588673
## as_factor(nr)18 as_factor(nr)45 as_factor(nr)110
## 0.2020454 0.1085325 0.4930897
## as_factor(nr)120 as_factor(nr)126 as_factor(nr)150
## -0.4121125 0.5466180 -0.2345779
## as_factor(nr)162 as_factor(nr)166 as_factor(nr)189
## -0.5460605 -0.4402726 -0.2809320
## as_factor(nr)193 as_factor(nr)209 as_factor(nr)212
## 0.5350933 0.1282157 0.5110860
## as_factor(nr)218 as_factor(nr)243 as_factor(nr)259
## 0.6580525 0.2204271 0.5358792
## as_factor(nr)260 as_factor(nr)309 as_factor(nr)351
## 0.2863690 0.6847195 0.0749453
## as_factor(nr)353 as_factor(nr)383 as_factor(nr)408
## 0.3106510 0.0982151 0.2486188
## as_factor(nr)424 as_factor(nr)464 as_factor(nr)483
## 0.8659802 -0.4005279 0.2741420
## as_factor(nr)556 as_factor(nr)560 as_factor(nr)569
## 0.6477222 0.0687833 -0.5581998
## as_factor(nr)583 as_factor(nr)647 as_factor(nr)658
## 0.2845939 -0.0685340 0.2440167
## as_factor(nr)684 as_factor(nr)711 as_factor(nr)729
## 1.0114142 0.0040234 0.8119867
## as_factor(nr)731 as_factor(nr)732 as_factor(nr)793
## -0.0497423 0.1089600 0.1494168
## as_factor(nr)797 as_factor(nr)800 as_factor(nr)813
## 0.1684761 0.0246981 -0.5291300
## as_factor(nr)823 as_factor(nr)827 as_factor(nr)847
## -1.0594719 -0.2008313 0.1615324
## as_factor(nr)851 as_factor(nr)863 as_factor(nr)873
## 0.4742646 0.1418878 -0.7443141
## as_factor(nr)891 as_factor(nr)908 as_factor(nr)910
## 0.6617605 -0.9901529 0.2545301
## as_factor(nr)916 as_factor(nr)919 as_factor(nr)922
## -0.0247005 -0.0563176 0.5330584
## as_factor(nr)924 as_factor(nr)925 as_factor(nr)944
## -0.5603942 0.7388367 -0.4893991
## as_factor(nr)945 as_factor(nr)947 as_factor(nr)955
## -0.2056538 0.7894674 0.4688771
## as_factor(nr)965 as_factor(nr)996 as_factor(nr)1007
## 0.0011922 0.0024493 0.1569972
## as_factor(nr)1054 as_factor(nr)1064 as_factor(nr)1081
## -0.1986985 0.5142225 -0.1308018
## as_factor(nr)1085 as_factor(nr)1091 as_factor(nr)1094
## 0.1031126 -0.3927281 0.0006299
## as_factor(nr)1096 as_factor(nr)1098 as_factor(nr)1102
## -0.2450096 0.7203420 0.1591198
## as_factor(nr)1107 as_factor(nr)1142 as_factor(nr)1156
## 0.1643931 0.2420108 -0.1146136
## as_factor(nr)1180 as_factor(nr)1190 as_factor(nr)1204
## 0.2527814 -0.0646183 0.2655009
## as_factor(nr)1249 as_factor(nr)1272 as_factor(nr)1311
## 0.0844531 0.3144074 -0.1595409
## as_factor(nr)1316 as_factor(nr)1318 as_factor(nr)1345
## 0.2778284 -0.1365694 -0.4484422
## as_factor(nr)1397 as_factor(nr)1434 as_factor(nr)1492
## 0.0959715 -0.6605361 0.0934701
## as_factor(nr)1496 as_factor(nr)1506 as_factor(nr)1515
## -0.7466057 0.0725290 -0.2513917
## as_factor(nr)1520 as_factor(nr)1528 as_factor(nr)1554
## -0.1445889 -0.3049101 -0.1505543
## as_factor(nr)1575 as_factor(nr)1576 as_factor(nr)1628
## 0.2733155 -0.0141681 -0.1800837
## as_factor(nr)1641 as_factor(nr)1644 as_factor(nr)1653
## 0.7133776 -0.2519397 -0.3808045
## as_factor(nr)1654 as_factor(nr)1721 as_factor(nr)1742
## 0.1314616 0.4504153 0.1680601
## as_factor(nr)1744 as_factor(nr)1763 as_factor(nr)1777
## 0.1545325 -0.5249411 -0.2199798
## as_factor(nr)1843 as_factor(nr)1891 as_factor(nr)1895
## 0.9471332 -0.4396996 0.1992381
## as_factor(nr)1899 as_factor(nr)1925 as_factor(nr)1930
## -0.0689627 -0.0209432 -0.3039736
## as_factor(nr)1961 as_factor(nr)1963 as_factor(nr)1979
## 0.2004823 0.2175404 0.4192028
## as_factor(nr)1988 as_factor(nr)2000 as_factor(nr)2014
## -0.3547352 0.3390797 0.4306733
## as_factor(nr)2025 as_factor(nr)2038 as_factor(nr)2075
## -0.0088173 -0.3322481 0.3358691
## as_factor(nr)2101 as_factor(nr)2106 as_factor(nr)2107
## 0.7448600 0.1274726 -0.0777436
## as_factor(nr)2108 as_factor(nr)2147 as_factor(nr)2157
## 0.3293251 -1.4220602 -0.3080365
## as_factor(nr)2163 as_factor(nr)2173 as_factor(nr)2180
## 0.6401244 -0.1349283 -0.1263657
## as_factor(nr)2183 as_factor(nr)2216 as_factor(nr)2220
## -0.0503839 0.1857614 0.3705435
## as_factor(nr)2227 as_factor(nr)2264 as_factor(nr)2306
## -0.1358223 -0.3091959 -0.6756233
## as_factor(nr)2312 as_factor(nr)2314 as_factor(nr)2329
## 0.3355878 0.5290060 0.3244606
## as_factor(nr)2335 as_factor(nr)2341 as_factor(nr)2351
## 0.0383447 -0.3232691 -0.3374433
## as_factor(nr)2386 as_factor(nr)2401 as_factor(nr)2413
## -0.7008390 -0.1342346 0.6445750
## as_factor(nr)2421 as_factor(nr)2445 as_factor(nr)2451
## -0.1786544 -0.0166565 0.2330834
## as_factor(nr)2494 as_factor(nr)2508 as_factor(nr)2535
## -0.7329064 0.4873586 0.1781931
## as_factor(nr)2540 as_factor(nr)2685 as_factor(nr)2711
## -0.3678554 0.4867136 -0.3197433
## as_factor(nr)2718 as_factor(nr)2721 as_factor(nr)2733
## 0.6427425 0.0711279 -0.5114629
## as_factor(nr)2741 as_factor(nr)2745 as_factor(nr)2751
## -0.0656126 0.3165448 0.1089606
## as_factor(nr)2774 as_factor(nr)2801 as_factor(nr)2813
## 0.7161539 -0.2499014 -0.2545656
## as_factor(nr)2833 as_factor(nr)2839 as_factor(nr)2842
## 0.4127922 0.2038677 0.2398360
## as_factor(nr)2866 as_factor(nr)2868 as_factor(nr)2874
## 0.1589736 0.4256432 -0.6921180
## as_factor(nr)2916 as_factor(nr)2951 as_factor(nr)2980
## 0.1074157 -0.2764584 0.0331924
## as_factor(nr)2994 as_factor(nr)2997 as_factor(nr)3017
## 0.0254400 0.2189687 0.1251911
## as_factor(nr)3037 as_factor(nr)3059 as_factor(nr)3062
## 0.5988740 0.2389050 0.7489376
## as_factor(nr)3100 as_factor(nr)3102 as_factor(nr)3127
## -0.0332785 -0.7166815 -1.0250521
## as_factor(nr)3136 as_factor(nr)3137 as_factor(nr)3138
## 0.2869289 0.4581664 0.2596971
## as_factor(nr)3140 as_factor(nr)3193 as_factor(nr)3196
## 0.4143431 0.0051748 0.3669188
## as_factor(nr)3200 as_factor(nr)3202 as_factor(nr)3207
## 0.1586095 0.2291555 0.1892850
## as_factor(nr)3208 as_factor(nr)3210 as_factor(nr)3215
## 0.3125633 0.1541200 -0.0896639
## as_factor(nr)3219 as_factor(nr)3226 as_factor(nr)3235
## -0.3633334 -0.3335658 -0.1901436
## as_factor(nr)3239 as_factor(nr)3271 as_factor(nr)3275
## -0.6941492 -0.0585147 -0.1518026
## as_factor(nr)3282 as_factor(nr)3289 as_factor(nr)3290
## 0.0018243 -0.1431946 -0.0725325
## as_factor(nr)3307 as_factor(nr)3333 as_factor(nr)3353
## 0.7359895 -0.8625462 -0.4078738
## as_factor(nr)3380 as_factor(nr)3381 as_factor(nr)3389
## 0.0537697 0.0717494 0.1657350
## as_factor(nr)3394 as_factor(nr)3401 as_factor(nr)3414
## 0.5586050 -0.2521901 0.4222398
## as_factor(nr)3420 as_factor(nr)3440 as_factor(nr)3461
## 0.0271526 -1.2838070 0.2180308
## as_factor(nr)3468 as_factor(nr)3482 as_factor(nr)3495
## 0.0166458 0.6722500 0.0808619
## as_factor(nr)3503 as_factor(nr)3525 as_factor(nr)3526
## 0.5833753 0.0781587 0.2117918
## as_factor(nr)3538 as_factor(nr)3563 as_factor(nr)3575
## 0.5578160 0.1964154 0.5930825
## as_factor(nr)3580 as_factor(nr)3581 as_factor(nr)3589
## 0.0787277 -0.2308375 -0.4741645
## as_factor(nr)3591 as_factor(nr)3598 as_factor(nr)3602
## 0.1519407 0.4057427 0.6102853
## as_factor(nr)3607 as_factor(nr)3621 as_factor(nr)3628
## -1.0411348 0.1111698 0.5311493
## as_factor(nr)3653 as_factor(nr)3706 as_factor(nr)3707
## 0.4608529 0.2360062 -0.5906132
## as_factor(nr)3708 as_factor(nr)3743 as_factor(nr)3777
## 0.2191805 0.1389024 0.4747418
## as_factor(nr)3831 as_factor(nr)3844 as_factor(nr)3847
## -0.1015208 0.0416051 0.7525291
## as_factor(nr)3848 as_factor(nr)3882 as_factor(nr)3937
## 0.4888822 -0.7672207 -0.0710730
## as_factor(nr)4000 as_factor(nr)4004 as_factor(nr)4025
## 0.2527725 0.6296114 -0.2607890
## as_factor(nr)4032 as_factor(nr)4046 as_factor(nr)4088
## -0.3283376 0.0409790 0.8845383
## as_factor(nr)4091 as_factor(nr)4122 as_factor(nr)4127
## 1.0121476 0.4747729 -0.0337868
## as_factor(nr)4128 as_factor(nr)4159 as_factor(nr)4204
## -0.4703832 0.4559191 -0.0946723
## as_factor(nr)4229 as_factor(nr)4258 as_factor(nr)4261
## 0.0579366 0.5815351 0.4183856
## as_factor(nr)4264 as_factor(nr)4278 as_factor(nr)4297
## -0.2256458 0.3754312 0.4935033
## as_factor(nr)4302 as_factor(nr)4321 as_factor(nr)4328
## -0.3179859 0.1724987 0.0384778
## as_factor(nr)4332 as_factor(nr)4335 as_factor(nr)4357
## -0.9461914 0.1431209 0.3664675
## as_factor(nr)4365 as_factor(nr)4380 as_factor(nr)4394
## -0.9217202 0.3694399 0.4465017
## as_factor(nr)4510 as_factor(nr)4559 as_factor(nr)4563
## 0.0640553 -0.0683127 -0.4918190
## as_factor(nr)4569 as_factor(nr)4603 as_factor(nr)4607
## 0.6114778 0.4868630 -0.4827456
## as_factor(nr)4633 as_factor(nr)4676 as_factor(nr)4701
## 0.1175835 -0.5715178 0.3091466
## as_factor(nr)4716 as_factor(nr)4720 as_factor(nr)4759
## -0.3159763 0.7021370 0.1199122
## as_factor(nr)4791 as_factor(nr)4811 as_factor(nr)4828
## 0.2497200 -0.6078364 -0.0345333
## as_factor(nr)4857 as_factor(nr)4858 as_factor(nr)4859
## -0.4686019 0.2787164 -0.2965494
## as_factor(nr)4866 as_factor(nr)4881 as_factor(nr)4884
## 0.2704070 -0.0484928 0.1306036
## as_factor(nr)4888 as_factor(nr)4901 as_factor(nr)4917
## -0.0729494 -0.4033223 -0.3886961
## as_factor(nr)4926 as_factor(nr)4982 as_factor(nr)5017
## 0.0838707 -0.3130062 0.6689182
## as_factor(nr)5033 as_factor(nr)5048 as_factor(nr)5122
## 0.7467193 -0.4758237 0.1132699
## as_factor(nr)5141 as_factor(nr)5147 as_factor(nr)5158
## 0.5984766 0.6499833 0.3148903
## as_factor(nr)5221 as_factor(nr)5223 as_factor(nr)5227
## 0.0061269 0.3485008 0.1359778
## as_factor(nr)5248 as_factor(nr)5252 as_factor(nr)5263
## -0.0064682 -0.3008864 0.2013024
## as_factor(nr)5274 as_factor(nr)5335 as_factor(nr)5345
## 0.6845062 0.2477231 -0.2279034
## as_factor(nr)5359 as_factor(nr)5368 as_factor(nr)5377
## -0.6833245 -0.3685628 0.1730136
## as_factor(nr)5390 as_factor(nr)5419 as_factor(nr)5435
## 0.0543443 -0.6859831 -0.2344141
## as_factor(nr)5437 as_factor(nr)5497 as_factor(nr)5525
## 0.0170750 0.0234595 -0.1783761
## as_factor(nr)5529 as_factor(nr)5531 as_factor(nr)5579
## 0.0172448 0.1457726 -0.0699605
## as_factor(nr)5588 as_factor(nr)5599 as_factor(nr)5650
## 0.2630069 0.3407023 -0.1208191
## as_factor(nr)5660 as_factor(nr)5665 as_factor(nr)5666
## 0.4535081 0.0107198 0.1969140
## as_factor(nr)5698 as_factor(nr)5699 as_factor(nr)5731
## 0.1984593 0.4502924 -0.2856565
## as_factor(nr)5750 as_factor(nr)5755 as_factor(nr)5772
## -0.1740283 -0.1905782 -0.8609714
## as_factor(nr)5816 as_factor(nr)5823 as_factor(nr)5851
## -0.0187679 -0.3477545 -0.9044465
## as_factor(nr)5857 as_factor(nr)5859 as_factor(nr)6016
## -0.0862892 0.3791638 0.4305080
## as_factor(nr)6020 as_factor(nr)6025 as_factor(nr)6056
## -0.9549249 -0.7689466 -0.4011752
## as_factor(nr)6094 as_factor(nr)6186 as_factor(nr)6395
## 0.2459698 0.1857773 0.1365430
## as_factor(nr)6430 as_factor(nr)6446 as_factor(nr)6463
## -0.2188987 0.0968964 -0.2284774
## as_factor(nr)6558 as_factor(nr)6559 as_factor(nr)6561
## 0.5599927 0.0003910 0.5342971
## as_factor(nr)6574 as_factor(nr)6648 as_factor(nr)6813
## -0.2562681 0.6453238 -0.0793298
## as_factor(nr)6824 as_factor(nr)6888 as_factor(nr)6942
## -0.1461823 -0.5690177 0.0183179
## as_factor(nr)6954 as_factor(nr)6955 as_factor(nr)6964
## 0.5417778 0.4500903 -0.0043564
## as_factor(nr)6987 as_factor(nr)7025 as_factor(nr)7043
## 1.2720637 0.3481714 0.1488308
## as_factor(nr)7060 as_factor(nr)7087 as_factor(nr)7238
## 0.2119258 -0.5611468 -0.0607624
## as_factor(nr)7279 as_factor(nr)7342 as_factor(nr)7343
## -0.1919030 -0.0237805 -0.0089601
## as_factor(nr)7411 as_factor(nr)7424 as_factor(nr)7429
## -0.3824880 -0.0101679 0.0906558
## as_factor(nr)7454 as_factor(nr)7472 as_factor(nr)7474
## 0.1976527 -0.0748980 -0.0093243
## as_factor(nr)7509 as_factor(nr)7539 as_factor(nr)7769
## 0.0067496 -0.3042770 0.3479501
## as_factor(nr)7783 as_factor(nr)7784 as_factor(nr)7801
## -0.0634716 1.3091200 -0.4832790
## as_factor(nr)7824 as_factor(nr)7874 as_factor(nr)7887
## 0.1444155 0.7831218 0.0800170
## as_factor(nr)7923 as_factor(nr)7926 as_factor(nr)8021
## 0.7046102 0.2593901 0.2063953
## as_factor(nr)8087 as_factor(nr)8089 as_factor(nr)8090
## 0.6271278 0.2188360 0.1581329
## as_factor(nr)8096 as_factor(nr)8106 as_factor(nr)8107
## 0.1673140 0.0974152 -0.1696652
## as_factor(nr)8142 as_factor(nr)8168 as_factor(nr)8173
## -0.0643015 0.2804680 0.0359172
## as_factor(nr)8203 as_factor(nr)8211 as_factor(nr)8224
## 0.7694466 -0.3648051 0.5093971
## as_factor(nr)8272 as_factor(nr)8300 as_factor(nr)8304
## 0.5386226 0.0924080 0.2796535
## as_factor(nr)8364 as_factor(nr)8370 as_factor(nr)8381
## 0.2509439 0.5182665 -0.3088516
## as_factor(nr)8388 as_factor(nr)8406 as_factor(nr)8415
## 0.0164486 -0.0082910 -0.4285644
## as_factor(nr)8496 as_factor(nr)8501 as_factor(nr)8518
## -0.3625736 -0.5540992 0.6107016
## as_factor(nr)8520 as_factor(nr)8524 as_factor(nr)8548
## -0.4697766 -0.0468748 -0.2537187
## as_factor(nr)8556 as_factor(nr)8564 as_factor(nr)8581
## 0.2608849 -0.2831687 -0.3909871
## as_factor(nr)8586 as_factor(nr)8587 as_factor(nr)8597
## -0.5064964 -0.5115870 -0.0733811
## as_factor(nr)8656 as_factor(nr)8722 as_factor(nr)8743
## -0.0526669 0.2179461 0.3876560
## as_factor(nr)8749 as_factor(nr)8758 as_factor(nr)8796
## 0.0933591 -0.0441302 0.2133917
## as_factor(nr)8838 as_factor(nr)8842 as_factor(nr)8846
## 0.0575352 -0.3392368 -0.2420697
## as_factor(nr)8860 as_factor(nr)8862 as_factor(nr)8880
## -0.2235111 -0.0359877 0.7517817
## as_factor(nr)8886 as_factor(nr)8903 as_factor(nr)8908
## 0.0580455 -0.7769109 -0.1923077
## as_factor(nr)8911 as_factor(nr)8917 as_factor(nr)8991
## -0.4266092 0.2885122 0.4478844
## as_factor(nr)8997 as_factor(nr)9014 as_factor(nr)9015
## 0.4059819 0.1657148 -0.0351953
## as_factor(nr)9027 as_factor(nr)9066 as_factor(nr)9082
## 0.4343381 -0.8601727 -0.4743540
## as_factor(nr)9131 as_factor(nr)9132 as_factor(nr)9154
## -0.2932697 -0.0933988 0.8779975
## as_factor(nr)9158 as_factor(nr)9184 as_factor(nr)9230
## -0.1045911 -0.1610132 -0.4958800
## as_factor(nr)9265 as_factor(nr)9367 as_factor(nr)9390
## -0.1977154 -0.4128657 -0.4844774
## as_factor(nr)9391 as_factor(nr)9418 as_factor(nr)9424
## -0.0299420 0.7904038 0.4243795
## as_factor(nr)9447 as_factor(nr)9449 as_factor(nr)9453
## -0.3077446 -0.1947209 0.4245348
## as_factor(nr)9468 as_factor(nr)9502 as_factor(nr)9505
## -0.0323229 0.5159878 -0.3885785
## as_factor(nr)9603 as_factor(nr)9643 as_factor(nr)9667
## -0.2619756 0.2020463 0.3369007
## as_factor(nr)9683 as_factor(nr)9694 as_factor(nr)9710
## -0.3717678 0.4631701 0.1230740
## as_factor(nr)9718 as_factor(nr)9725 as_factor(nr)9744
## 0.2802833 -0.0752875 0.3284672
## as_factor(nr)9752 as_factor(nr)9776 as_factor(nr)9786
## 0.7241654 0.6713395 0.2011286
## as_factor(nr)9791 as_factor(nr)9794 as_factor(nr)9810
## -0.5056260 0.1197105 -0.3605671
## as_factor(nr)9846 as_factor(nr)9859 as_factor(nr)9868
## 0.7610772 -0.0458501 -0.2164203
## as_factor(nr)9876 as_factor(nr)9883 as_factor(nr)9889
## 0.3713277 -0.1840586 0.4380360
## as_factor(nr)9901 as_factor(nr)9936 as_factor(nr)9964
## 0.2413978 0.0352408 -0.2767415
## as_factor(nr)10043 as_factor(nr)10067 as_factor(nr)10091
## -0.7534264 0.1029372 0.3028379
## as_factor(nr)10120 as_factor(nr)10121 as_factor(nr)10167
## -1.3373992 -0.0363318 -0.0088156
## as_factor(nr)10209 as_factor(nr)10230 as_factor(nr)10265
## -0.3294991 0.2384233 0.5701620
## as_factor(nr)10274 as_factor(nr)10311 as_factor(nr)10392
## -0.2657193 0.2424737 -0.6170507
## as_factor(nr)10425 as_factor(nr)10441 as_factor(nr)10457
## 0.7000110 -0.0350489 -0.2657116
## as_factor(nr)10469 as_factor(nr)10524 as_factor(nr)10552
## 0.3475650 -0.3469673 -0.3800088
## as_factor(nr)10553 as_factor(nr)10570 as_factor(nr)10593
## 0.0645696 -1.7692078 -0.2509685
## as_factor(nr)10666 as_factor(nr)11275 as_factor(nr)11328
## -0.4183513 -0.2120244 -0.0550100
## as_factor(nr)11750 as_factor(nr)11821 as_factor(nr)11857
## -0.0403358 0.2613495 0.5374261
## as_factor(nr)11887 as_factor(nr)11890 as_factor(nr)11892
## 0.3225502 0.1174285 0.6613401
## as_factor(nr)11924 as_factor(nr)11925 as_factor(nr)11957
## 0.0799755 -0.0187697 -0.8699528
## as_factor(nr)11973 as_factor(nr)11990 as_factor(nr)12012
## 0.2197511 0.5290434 -0.1820652
## as_factor(nr)12013 as_factor(nr)12045 as_factor(nr)12055
## 0.1499400 -0.2690730 0.2934351
## as_factor(nr)12084 as_factor(nr)12088 as_factor(nr)12122
## -0.5128255 -0.4764069 -0.4007184
## as_factor(nr)12179 as_factor(nr)12182 as_factor(nr)12220
## -0.1753613 0.1061416 0.3412228
## as_factor(nr)12221 as_factor(nr)12245 as_factor(nr)12276
## -0.9974771 -0.5254311 0.1087125
## as_factor(nr)12385 as_factor(nr)12410 as_factor(nr)12420
## 0.3013288 -0.6276005 0.1479143
## as_factor(nr)12433 as_factor(nr)12451 as_factor(nr)12477
## 0.2379909 0.1411634 0.6686839
## as_factor(nr)12500 as_factor(nr)12534 as_factor(nr)12548
## -0.3389846 0.6202036 -0.3341063
## as_factor(year)1981 as_factor(year)1982
## 0.1196069 0.1775399
That’s a lot of output! As you can see, R reports a coefficient estimate for every dummy variable. You’ll probably want to filter the results to the variables that you care about, and I’ll do that below.
In terms of computing standard errors, we almost always cluster standard errors at the individual level. Remember, the assumption was that there is some unobservable component unique to each person that determines wage. If that assumption is true, then residuals will necessarily be correlated within individuals, so we must compute standard errors that are robust to this clustered correlation.
We do that in R using the vcovCL
function from
sandwich
:
Now we can report our coefficients using coeftest
as we
have done in the past. I’ll use the broom
package to filter
out all the fixed effect estimates.
## # A tibble: 1 × 5
## term estimate std.error statistic p.value
## <chr> <dbl> <dbl> <dbl> <dbl>
## 1 union 0.118 0.0492 2.40 0.0164
Using someone else’s code
There’s two main libraries that you will probably use for panel data:
plm
and fixest
. The former has been around
longer and is endorsed by the Intro to Econometrics with
R authors. The latter has been endorsed by… me, and there are other
people that I know are switching to fixest
. I’ll refer you
to Section
10.3 of Intro to Metrics with R if you’re interested in
plm
and talk about fixest
here.
The thing that I like about fixest
is its sensible
treatment of standard errors and its functions for exporting regression
tables. In order to fit a fixed effect model, you just need to use a
vertical bar in your formula:
## OLS estimation, Dep. Var.: lwage
## Observations: 1,635
## Fixed-effects: nr: 545, year: 3
## Standard-errors: Clustered (nr)
## Estimate Std. Error t value Pr(>|t|)
## union 0.118113 0.040125 2.94364 0.0033823 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RMSE: 0.305418 Adj. R2: 0.507916
## Within R2: 0.009123
Two things that are nice: It doesn’t print all of the fixed effect
values like in lm. You can get them by running
fixef(model)
, but it’s not printed in regression output by
default.
Also, you can see that it clusters standard errors at the level of the first fixed effect by default. That is the correct default to use, and you can use other type of standard errors if you like. There is extensive documentation on the author’s website talking about standard errors, which is an exception for software packages.
The export features are the last thing that I like about
fixest
. You’ll care a lot more about this when you’re
writing papers, but it’s nice to just have one function that has good
defaults (it looks good in LaTeX).
setFixest_dict(
lwage = "log(wage)",
nr = "Individual",
year = "Year",
union = "In union (0 or 1)"
)
etable(model)
## model
## Dependent Var.: log(wage)
##
## In union (0 or 1) 0.1181** (0.0401)
## Fixed-Effects: -----------------
## Individual Yes
## Year Yes
## _________________ _________________
## S.E.: Clustered by: Individual
## Observations 1,635
## R2 0.67265
## Within R2 0.00912
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Conclusion
As you go on, there will be more things that you could do yourself, but maybe it’s easier to learn to use a package that already does it. It’s a fixed cost to learn, and a constraint that you can only do what the package has implemented. That’s not to discourage you from using extra packages, but rather encouragement to take on the challenge and do it yourself sometimes. You learn more that way.
Happy Coding!