2016-09-18 2 views
2

내가 변수 C와 D의 이질성에 대한 제어하려는 R.에서 고정 효과 회귀 모델을 실행하기 위해 노력하고있어 대 PLM은 (둘 다 시간 변수 없음).고정 효과 : LM + 계수()

1) PLM 패키지를 사용 :

나는 다음과 같은 두 가지 방법을 시도 나에게

formula = Y ~ A + B + C + D 

reg = plm(formula, data= data, index=c('C','D'), method = 'within') 

duplicate couples (time-id)Error in pdim.default(index[[1]], index[[2]]) : 

가 나는 또한

data_p = pdata.frame(data,index=c('C','D')) 

를 사용하여 첫 번째 패널을 만들려고 다음과 같은 오류 메시지를 제공 그러나 나는 두 컬럼 모두에서 반복적으로 관찰했다.

2) 사용 계수()와 LM : 음

formula = Y ~ A + B + factor(C) + factor(D) 
reg = lm(formula, data= data) 

두 가지 방법의 차이점은 무엇을 작동? plm이 왜 저에게 효과가 없습니까? 그 중 하나가 시간이되어야하기 때문입니까?

+0

plm의 오류 메시지는 매우 유익합니다. 웹에서 검색 만하면됩니다 (예 : https://stat.ethz.ch/pipermail/r-help/2010-March/233578.html 참조) – Helix123

+0

왜 수식에 색인? 당신이 말했듯이, D는 시간 변수가 아닙니다. 당신의 명령은 R이 C가 개인을 식별하고 D가 시간을 식별한다는 것을 의미합니다. 다른 차원을 사용하고 있을지도 모릅니다. 게다가 변수 C와 D로 구성된 id-time 쌍을 반복했다는 오류가 있습니다. 이러한 관찰을 고유하게 식별해야합니다. –

답변

3

그 오류은 다른 하나 (또는 ​​귀하의 첫 번째 차원에서 별개의 사람들은, 당신이하는 공동 C와 C 및 D

이의 당신이 세 번째 변수 F 있다고 가정 해 봅시다 변수에 의해 형성 ID-시간 쌍을 반복 한 계속 말하고있다 그것이 무엇이든). 그럼 당신은 고유 indice을 만들 수 있습니다 dplyr으로, id 말 :

data.frame$id <- data.frame %>% group_indices(C, F) 

PLM의 인덱스 인수가 index = c(id, D)된다.

lm + factor()

는 별개의 관찰이 단지의 경우 솔루션입니다. 그렇지 않은 경우, 각 ID 내에서 결과의 가중치를 올바르게 계산하지 못합니다. 즉, 고정 효과가 올바르게 식별되지 않습니다.