Я пытаюсь изучить R после использования Stata, и я должен сказать, что мне это нравится. Но теперь у меня проблемы. Я собираюсь сделать несколько регрессий с данными Panel, поэтому я использую пакет plm
.Heteroscedasticity надежные стандартные ошибки с пакетом PLM
Теперь я хочу иметь те же самые результаты с plm
в R, как при использовании функции lm
и Stata при выполнении гетероседастичности надежной и сущностной регрессии.
Давайте предположим, что у меня есть панель набора данных с переменными Y
, ENTITY
, TIME
, V1
.
я получаю те же стандартные ошибки в R с этим кодом
lm.model<-lm(Y ~ V1 + factor(ENTITY), data=data)
coeftest(lm.model, vcov.=vcovHC(lm.model, type="HC1))
как тогда, когда я выполняю эту регрессию в Stata
xi: reg Y V1 i.ENTITY, robust
Но когда я выполняю эту регрессию с plm
пакета я получаю другое стандартные ошибки
plm.model<-plm(Y ~ V1 , index=C("ENTITY","YEAR"), model="within", effect="individual", data=data)
coeftest(plm.model, vcov.=vcovHC(plm.model, type="HC1))
- Я пропустил настройку некоторых параметров?
- Использует ли модель
plm
какую-либо другую оценку и если да, то как? - Могу ли я каким-то образом имеют те же стандартные ошибки с
plm
как в Stata с, robust
это то, что вам лучше спросить у http://www.crossvalidated.com, они будут в состоянии помочь вам больше. И было бы неплохо иметь некоторый воспроизводимый код, пока вы на нем, вместе с ожидаемым результатом. Это часто устраняет проблему довольно быстро. –
Я не знаю stata, но похоже, что ваша регрессия stata представляет собой объединенную линейную модель Y = a0 + a1 * V1 + a2 * ENTITY + epsilon с надежным het se, что вы делаете с 'lm' , поэтому результаты совпадают. В модели 'plm' вы выполняете регрессию FE Y = a0 + a1 * V1 + ui + epsilon, где ui - это FE для каждого« индивидуального », который по индексу, указанному вами как ENTITY. Поэтому я думаю, что ваши результаты stata и R совпадают в первом случае, потому что вы делаете объединенную панель с сущностью как ind var в обоих случаях. Но я не знаю stata. –