Дата занятия: 26 сентября

1. Модель с FE на пространственные единицы: робастные стандартные ошибки, качество подгонки модели по подгруппам

Продолжим работать с тем же массивом, что и на прошлом занятии.

panel<-read_dta("C:/Users/User/OneDrive/Рабочий стол/RAPDC_lab1.dta")

Оценим FE-модель с поправкой на гетероскедастичность, посчитаем робастные стандартные ошибки.

fe_country <- plm(fh_polity~state_capacity, data = panel, index=c("country", "period"), effect = "individual", model="within")
summary(fe_country)
## Oneway (individual) effect Within Model
## 
## Call:
## plm(formula = fh_polity ~ state_capacity, data = panel, effect = "individual", 
##     model = "within", index = c("country", "period"))
## 
## Balanced Panel: n = 27, T = 5, N = 135
## 
## Residuals:
##     Min.  1st Qu.   Median  3rd Qu.     Max. 
## -3.27528 -0.49682  0.19188  0.54226  3.95012 
## 
## Coefficients:
##                Estimate Std. Error t-value  Pr(>|t|)    
## state_capacity  0.78459    0.13440  5.8378 5.736e-08 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Total Sum of Squares:    164.63
## Residual Sum of Squares: 124.86
## R-Squared:      0.24157
## Adj. R-Squared: 0.050186
## F-statistic: 34.0803 on 1 and 107 DF, p-value: 5.7355e-08
coeftest(fe_country, vcov = vcovHC, type = "HC3")
## 
## t test of coefficients:
## 
##                Estimate Std. Error t value Pr(>|t|)   
## state_capacity  0.78459    0.24712   3.175 0.001957 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Как мы видим, значимость оценки коэффициента при предикторе несколько снизилась.

Оценим качество подгонки FE-модели, в данном случае с учетом структуры данных нам целесообразно посмотреть на качество подгонки для каждой отдельной подгруппы наблюдений, то есть, для каждой отдельной страны. Сохраним предсказанные значения \(\hat{y}\) и рассчитаем по подгруппам корреляцию между предсказанными и наблюдаемыми значениями зависимой переменной.

LSDV_country <- lm(fh_polity~state_capacity+country, data = panel)
y_pred <- LSDV_country$fitted 
panel1 <- data.frame(panel, y_pred) 
merged <- panel1 %>% group_by(country)%>% summarize(., cor(fh_polity, y_pred))%>% merge(panel1, ., by="country")
head(merged)

В массиве данных появилась переменная \(y\_pred\) – предсказанное значение отклика, а также показатель корреляции наблюдаемых и предсказанных значений отклика, рассчитанная для каждой страны.

Далее посмотрим, воспроизводятся ли результаты при исключении наблюдений с самыми маленькими значениями корреляции. Породим новую переменную, так ее и назовем \(new\), которая принимает значение 1, если по модулю корреляция меньше 0.3, в противном случае – значение 0. Посмотрим, какие страны выбиваются из общей картинки. Те страны, для которых FE-модель дает плохой “прогноз” (плохо скоррелированы наблюдаемые и предсказанные значения отклика): Болгария, Латвия, Монголия, Россия, Туркменистан и Украина.

merged$new <- ifelse(abs(merged$`cor(fh_polity, y_pred)`)<0.3,1,0)
unique(merged$country[merged$new==1])
## [1] "Bulgaria"     "Latvia"       "Mongolia"     "Russia"       "Turkmenistan"
## [6] "Ukraine"

Переоценим модель на сокращенной выборке.

fe_country_2 <- plm(fh_polity ~ state_capacity, merged[merged$new == 0,], index=c("country", "period"), effect = "individual")
coeftest(fe_country_2, vcov = vcovHC, type = "HC3")
## 
## t test of coefficients:
## 
##                Estimate Std. Error t value Pr(>|t|)   
## state_capacity   0.8344     0.2573  3.2429 0.001705 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Как можно заметить, результаты в целом устойчивые: наблюдаем положительную связь между уровнем демократичности и государственной состоятельность, значимость осталась на том же уровне.

2. Модель с FE на временные периоды

Запишем модель с фиксированными эффектами теперь уже не на пространственные единицы, а на временные периоды.

\[\hat{y}_{it} = \hat{\beta}_{0} + \hat{\gamma}_{1}*T_{1t} + ... \hat{\gamma}_{T-1}*T_{(T-1)t} + \hat{b}_{1}*x_{it}\]

В такой модели \(\hat{\beta}_0\) показывает, чему в среднем равно значение зависимой переменной во временном периоде –- базовой категории -– при равенстве предикторов 0.

\(\hat{\gamma}_t\) –- на сколько в среднем отклоняется значение зависимой переменной в t-ом временном периоде в отличие от временного периода –- базовой категории –- при прочих равных.

Как мы уже говорили, дамми для временных периодов “поглощают” все неизменяющиеся в пространстве, но при этом изменяющиеся во времени характеристики. Такая модель позволит отследить, как в среднем изменяется зависимая переменная в разные временные периоды. Допустим, нас интересует, как объявление COVID-19 пандемией повлияло на потребительские расходы на услуги турагентств. Мы можем сравнить соответствующий показатель в период до объявления COVID-19 пандемией и после, оценка коэффициента при дамми на временной период покажет нам характер эффекта COVID-19 на потребительские расходы на услуги турагентств.

Если такие коэффициенты при дамми на временные периоды не представляют особого интереса, и в фокусе Вашего внимания – оценка коэффициента при предикторе, тогда модель можно также “схлопнуть”, то есть, сделать более экономной посредством внутригруппового преобразования:

\[y_{it} - \overline{y_{.t}} = b_{1}*(x_{it} - \overline{x_{.t}}) + (e_{it}-\overline{e_{.t}})\]

Для этого мы оцениваем модель, предварительно вычитая из исходных значений переменных среднее по каждому временному периоду. То есть, к примеру, зафиксировали первый временной период, рассчитали среднее по выборке стран за этот временной период, также зафиксировали второй период и рассчитали среднее только по этому временному периоду, и так далее. В итоге получаем массив, разрезанный на T подвыборок. После внутригруппового преобразования получим T подмассивов со значениями переменных в терминах отклонения от среднего по временному периоду. Внутри каждого из этих T кусочков выявляем взаимосвязь отклика и предикторов. То есть, коэффициент при предикторе теперь показывает, как в среднем при увеличении предиктора на 1 в межстрановой перспективе(!) изменяется значение отклика при прочих равных.

3. FE на временные периоды в R

Оценим модель с фиксированными эффектами на временные периоды.

LSDV_time <- lm(fh_polity ~ I(state_capacity-mean(state_capacity)) + factor(period), data = panel)
summary(LSDV_time)
## 
## Call:
## lm(formula = fh_polity ~ I(state_capacity - mean(state_capacity)) + 
##     factor(period), data = panel)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -5.0502 -1.3849  0.4346  1.4788  3.8888 
## 
## Coefficients:
##                                          Estimate Std. Error t value Pr(>|t|)
## (Intercept)                                5.9885     0.4043  14.813   <2e-16
## I(state_capacity - mean(state_capacity))   1.2538     0.1069  11.727   <2e-16
## factor(period)2                            0.4862     0.5693   0.854    0.395
## factor(period)3                            0.5464     0.5705   0.958    0.340
## factor(period)4                            0.5942     0.5727   1.038    0.301
## factor(period)5                            0.2661     0.5763   0.462    0.645
##                                             
## (Intercept)                              ***
## I(state_capacity - mean(state_capacity)) ***
## factor(period)2                             
## factor(period)3                             
## factor(period)4                             
## factor(period)5                             
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.092 on 129 degrees of freedom
## Multiple R-squared:  0.5304, Adjusted R-squared:  0.5122 
## F-statistic: 29.14 on 5 and 129 DF,  p-value: < 2.2e-16

Чтобы привязать интерпретацию константы к реальным значениям, имеющимся в массиве данных, а не гипотетическим, сразу центрируем переменную \(state\_capacity\). В итоге получаем

\(5.9885\) – среднее значение уровня демократичности в первом временном периоде при условии среднего значения государственной состоятельности.

Оценки коэффициентов при дамми-переменных незначимы, поэтому можно сказать, что в среднем уровень демократичности остается неизменным в разные временные периоды при прочих равных.

\(1,2538\) – оценка коэффициента при центрированном показателе государственной состоятельности демонстрирует, что в тех странах, в которых государственная состоятельность выше на 1, уровень демократичности в среднем выше примерно на 1.25 при прочих равных.

4. Сравнение с FE на пространственные единицы

А что же показывает коэффициент при предикторе в случае, если мы работаем с моделью с FE на пространственные единицы? В такую модель мы в явном виде включаем дамми, охватывающие характеристики, изменяющиеся только между странами, но при этом неизменяющиеся во времени. Таким образом, та изменчивость, которая остается для оценивания коэффициента при предикторе(-ах) – это различия между временными периодами.

Если ту же идею передать через призму внутригруппового преобразования, то получается, что мы вычитаем из исходных значений переменных среднее, рассчитанное по каждой пространственной единице. Допустим, у нас в массиве N стран. После внутригруппового преобразования получим N подмассивов со значениями переменных в терминах отклонения от среднего по стране. В каждом кусочке массива (а таких кусочков у нас N) выявляем взаимосвязь отклика и предикторов. На выходе получаем, как в среднем при увеличении предиктора на 1 во временной перспективе(!) изменяется значение отклика при прочих равных.

Таким образом, если мы хотим, чтобы коэффициент при предикторе был результатом сравнения стран в фиксированный временной период, тогда мы обращаемся к FE-модели на временные периоды. Если же, наоборот, хотим получить коэффициент, отражающий сравнение страны в разные временные периоды, тогда наш выбор – модель с FE на пространственные единицы.

5. А если учесть все вместе?

На данном этапе вполне закономерно возникает вопрос, а почему бы в модели не учесть сразу и временные периоды, и страны? В целом такое тоже возможно, и выглядеть такая “красотка” в LSDV виде будет вот так:

\[y_{it} = b_{0} + \gamma_{1}*D_{1i} + ... \gamma_{n-1}*D_{(n-1)i} + c_{1}*T_{1t} + ... c_{T-1}*T_{(T-1)t} + b_{1}*x_{it} + e_{it}\], где

\(\gamma\) – коэффициенты при дамми-переменных на пространственные единицы,

\(с\) – коэффициенты при дамми-переменных на временные периоды.

Такую twoways-модель нередко называют tricky model, и дело отнюдь не в том, что выглядит она внушительно (ведь можно точно так же, как и раньше, прибегнуть внутригрупповому преобразованию). Проблема в том, что изначально без специальных преобразований при оценивании такая модель неидентифицируема, кроме того, несколько смазывается интерпретация коэффициента при предикторе. Оценивание этой модели равносильно оцениванию при предварительном центрировании как по стране, так и по временному периоду. Берем исходный массив, совершаем внутригрупповое преобразование как в классической FE-модели, а потом берем срез по каждому временному периоду. Внутри каждой такой t-ой подвыборки содержатся уже значения переменных в терминах отклонений от среднего по стране. Внутри каждого из этих T кусочков выявляем взаимосвязь отклика и предикторов. То есть, теперь коэффициент при предикторе показывает, как в среднем при увеличении предиктора на 1 как в межстрановой, так и временной перспективе(!) изменяется значение отклика при прочих равных. Согласитесь, интерпретация самая что ни на есть tricky. Тем не менее, такая спецификация может быть полезной в контексте Difference-in-Differences.

6. А если не только стартовые условия, но и взаимосвязь различается по странам?

До этого момента мы исходили из простого допущения, что у нас разные стартовые условия, но при этом взаимосвязь предиктора и отклика одинакова во всех рассматриваемых единицах. Но нередко, такое допущение не соответствует действительности, не всегда правдоподобно, что характер взаимосвязи одинаковый во всех странах или во все временные периоды.

Адаптируем модель для того, чтобы она позволила выявить и различия во взаимосвязи в разных странах. Введем дамми на наклоны:

\[y_{it} = b_{0} + \gamma_{1}*D_{1i} + ... \gamma_{n-1}*D_{(n-1)i} + b_{1}*x_{it} + \mu_{1}*D_{1i}*x_{it} + ... \mu_{n-1}*D_{(n-1)i}*x_{it} + e_{it}\], где

\(b_{0}\) – то, чему в среднем равен \(y_{it}\) в стране – базовой категории – при всех предикторах равных 0;

\(\gamma_{i}\) – отклонение \(y_{it}\) в среднем в i-ой стране от \(y_{it}\) в базовой категории при всех предикторах равных 0 (теперь наклоны разные, поэтому фиксируем определенную точку);

\(b_{1}\) – насколько в среднем при прочих равных при увеличении \(x_{it}\) на 1 изменяется отклик в стране – базовой категории;

\(\mu_{i}\) – насколько в среднем отличается взаимосвязь \(x_{it}\) и \(y_{it}\) в i-ой стране в отличие от базовой категории при прочих равных.