У меня есть данные панели для нескольких стран за несколько лет.
Страны: DE, CH, FR, IT и AU
Годы: 2000 - 2015
Длянормальная регрессия разницы в разнице для лечения, происходящего в 2005 году для DE и CH I, может создать временную пустышку, пустышку для обработанных стран и термин взаимодействия. data$treated = ifelse(data$country == "DE" | "CH", 1, 0)
data$did = data$time * data$treated
Теперь я могу сделать регрессию разницы в разнице, чтобы найти средний эффект лечения в 2005 году на DE и CH с фиксированными эффектами года и страны.
didreg = lm(y ~ treated + time + did + factor(year)-1 + factor(country)-1, data=data)
или
didreg = plm(y ~ treated + time + did + factor(year) + factor(country), data=data, model = "within")
Мой вопрос таков: если в 2008 году FR и IT применяли то же самое,это правильный способ кодировать его следующим образом:
data$time = ifelse(data$year >= 2005, 1, 0)
data$treated = ifelse(data$country == "DE" | "CH", 1, 0)
data$did = data$time * data$treated
data$time2 = ifelse(data$year >= 2008, 1, 0)
data$treated2 = ifelse(data$country == "FR" | "IT", 1, 0)
data$did2 = data$time2 * data$treated2
didreg2 = lm(y ~ treated + time + did + treated2 + time2 + did2 + factor(year)-1 + factor(country)-1, data=data)
Это дало бы мне эффект лечения в 2005 году на DE и CH (did
) иэффект тот жепотом лечение по ФР и ИТ (did2
)? Или я должен был бы включить DE и CH в treated2
, потому что они уже подвергались лечению?
data$treated2 = ifelse(data$country == "FR" | "IT" | "DE" | "CH", 1, 0)
Спасибо за вашу помощь!
Кроме того, я правильно реализовал фиксированные эффекты? Или есть другой способ сделать это? И в чем отличие моей регрессии lm
от plm
? Я получаю то же did
значение (-0,028), но другое Adjusted R-suared
lm: Adjusted R-squared: 0.8312
(без -1 после factor()
s lm: Adjusted R-squared: 0.047
)
plm: Adjusted R-squared: 0.032