Это дополнительный вопрос, связанный с это сообщение, которое, на мой взгляд, не решило проблему.
Итак, я повторяю данные
============================================
year | comp | count | value.x | value.y
------+------+-------+----------+-----------
2000 | A | USA | 1029.0 | 239481
------+------+-------+----------+-----------
2000 | A | CAN | 2341.4 | 129333
------+------+-------+----------+-----------
2000 | B | USA | 2847.7 | 187319
------+------+-------+----------+-----------
2000 | B | CAN | 4820.5 | 392039
------+------+-------+----------+-----------
2001 | A | USA | 7289.9 | 429481
------+------+-------+----------+-----------
2001 | A | CAN | 5067.3 | 589143
------+------+-------+----------+-----------
2001 | B | USA | 7847.8 | 958234
------+------+-------+----------+-----------
2001 | B | CAN | 9820.0 | 1029385
============================================
Хотя с точки зрения программирования некоторые ответы в этом посте делают свою работу, проблема далека от завершения.
Мой вопрос более конкретен.
Я хочу запустить фиксированный эффект и модель случайного эффекта на основе данных, показанных выше. Я должен изучить влияние value.x
на value.y
на comp
и year
, без учета (или с учетом count
)
Предлагаемый ответ приведен в этом post для обработки дубликатов в идентификаторе выглядит следующим образом:
fakedata$id <- fakedata %>% group_indices(comp, count)
а затем запустить
plm(value.y ~ value.x, model = "within", data=fakedata, index=c(id,year))
хотя группировка comp
и count
, а затем запуск модели с фиксированными эффектами или случайными эффектами работает, эта стратегия предполагает, что каждый comp
обрабатывается по-разному в каждом cou
. Это не обязательно то, чего кто-то хочет от таких регрессий.
Как было сказано ранее, в моем случае я хочу знать влияние value.x
на value.y
на comp
и year
, без учета (или с учетом count
)
Думаю, здесь подойдет модель следующего вида:
plm(value.y ~ value.x + factor(cou), model = "within", data=fakedata, index=c(as.numeric(comp),year))
Как было предложено в некоторых ответах. Однако у меня это не сработало, и появляется обычное сообщение об ошибке из пакета plm:
Error in pdim.default(index[[1]], index[[2]]) :
duplicate couples (id-time)
In addition: Warning messages:
1: In pdata.frame(data, index) :
duplicate couples (id-time) in resulting pdata.frame
to find out which, use e.g. table(index(your_pdataframe), useNA = "ifany")
2: In is.pbalanced.default(index[[1]], index[[2]]) :
duplicate couples (id-time)
Итак, как я могу сделать модель с фиксированным эффектом, не взаимодействуя с comp
и cou
??
plm(value.y ~ value.x + factor(cou), model = "within", data=fakedata, index=c(as.numeric(comp),year))
- person msh855   schedule 05.06.2018