Я анализирую модели FE, RE и Pooled Ols для данных панели (кантоны = 26, T = 6, N = 156, сбалансированный набор).Все мои переменные в процентах.
Y = employment rate of canton refugees
x1 = percentage share of jobs in small Businesses
x2 = percentage share of jobs in large Businesses
Controls = % share of foreigners, cantonal GDP as a percentage to the country GDP, unemployment rate of natives
Я хочу скорректировать свои регрессионные модели для кластеризованной SE по группам (кантон = состояние), поскольку стандартные ошибки становятся заниженными при наличии последовательной корреляции, что делает проверку гипотез неоднозначной.
Поскольку существует только одно наблюдение на кантон и год, кластеризация по годам и кантонам невозможна.Результаты были сгруппированы по кантонам, потому что предполагается, что эти кластеры независимы друг от друга на основе автономной природы кантонов из-за федералистской природы страны.Предполагается, что годичные кластеры зависят друг от друга в связи с характером запаздывающих эффектов в экономических теориях / механизмах.
1) Нужно ли доказывать, что последовательная корреляция присутствует или можно предположить, что последовательная корреляция присутствует, потому что вполне вероятно, что наблюдения одного и того же кантона во времени коррелируют.Если необходимо проверять последовательную корреляцию перед кластеризацией SE, какой код использовать?
Вот мой код:
FE Модель: fixedm6 <- plm (Y ~ X + X1 + control, data = busdata, index = c ("canton", "year"),модель = "в пределах", эффект = 'twoways') </p>
FE Модель с кластеризацией SE:
cfixedm6 <- coeftest(fixedm6, vcov=vcovHC(fixedm6, method = "arellano", type="HC3",cluster="group"))
Модель пула OLS:
m6pool <- plm(Y ~ X + X1 + X2, data=busdata, index=c("canton", "year"), model="pooling")
Группа пула OLS с кластеризациейSE:
cm6pool <- coeftest(m6pool, vcov=vcovHC(m6pool, type="HC3", cluster="group"))
F-тест без кластеризованного SE:
pFtest(fixedm6, m6pool)
p-value < 2.2e-16 ----> FE is better fit
при вставке моделей с кластеризованным SE:
pFtest(cfixedm6, cm6pool)
Error in UseMethod("pFtest") : no applicable method for 'pFtest' applied to an object of class "coeftest"
То же самое происходит с другими lmtestфункции (phtest для теста Хаусмана).Модель RE:
randm6 <- plm(eY ~ X + X1 + X2, index=c("canton", "year"), data=busdata, model="random")
Модель RE с кластерным SE:
crandm6 <- coeftest(randm6, vcov=vcovHC(randm6, method = "white1", type="HC3", cluster="group"))
Без кластеризованного SE:
phtest(fixedm6, randmo6)
с кластеризованным SE:
phtest(cfixedm6, crandmo6)
Ошибка в UseMethod ("phtest"): нет применимого метода для "phtest", примененного к объекту класса "coeftest"
2) Должен ли я сначала сравнивать модели без кластеризованного SE, а затемна основе тестов Ftest / hausmann и т. д. найти лучшую модель и затем кластеризовать SE для этой модели?
Без кластеризации SE в моделях я могу легко использовать lmtest для сравнения значений моделей.Однако это кажется ложным, учитывая, что значения p будут искажены.Однако, как только я включил кластеризованный SE, я не знаю, как кодировать, чтобы сравнить и определить, какая модель лучше всего подходит.
Как мне подходить к этому в R?Большинство онлайн-ресурсов обсуждают FE / RE и т. Д., А затем обсуждают кластерные SE, но никогда не сравнивают модели с кластерными SE.Что я делаю неправильно?Какой код R будет лучше здесь?Я использую неправильные пакеты?
С наилучшими пожеланиями, Gil