У меня есть несколько панельных данных за несколько лет для нескольких стран. Некоторых людей лечили в возрасте 18 лет, и оттуда лечили каждого человека, которому исполнилось 18 лет.
Например: в 2000 году первые лица, которым было 18 лет, проходили лечение, в 2002 году им было 20 лет. в 2002 году:
age\year 1999 2000 2001 2002
18 z x x x
19 z z x x
20 z z z x
Поэтому я хочу сравнить лиц, которые получали лечение (x
), с теми, кто не проходил лечение (y
).
Я смогсравните все x со всеми y с этим кодом:
data$dummy = ifelse(data$age <= 18 & data$year == 2000 |
data$age <= 19 & data$year == 2001 |
data$age <= 20 & data$year == 2002, 1, 0)
df <- lm(y ~ dummy , data = data)
summary(df)
Но я хочу сравнить все x
, которые 18, с 18 y
. Я попробовал это с:
data$age18 <- (data$age <= 18)
data$year2000 = ifelse(data$year >= 2000, 1,0)
data$age19 <- (data$age <= 19 & data$age > 18)
data$year2001 = ifelse(data$year >= 2001, 1,0)
data$age20 <- (data$age <= 20 & data$age > 19)
data$year2002 = ifelse(data$year >= 2002, 1,0)
df <- lm(y ~ age18:year2000 + age19:year2001 + age20:year2002, data = data)
summary(df)
Но в выводе я получаю проводные коэффициенты:
(intercept)
age18FASLE:year2000
age18TRUE:year2000
age19FALSE:year2001
age19TRUE:year2001
age20FALSE:year2002
age20TRUE:year2002
Есть ли другой способ сравнения подгрупп внутри возрастной группы? Спасибо!