2016-07-15 4 views
0

고정 효과 패널 데이터 회귀의 고정 효과를 데이터 프레임으로 가져오고 싶습니다. 다음과 같은 메시지가 표시됩니다.R (PLM 패키지)의 데이터 프레임에 fixef 고정 설명

data("Produc", package = "plm") 
zz <- plm(log(gsp) ~ log(pcap) + log(pc) + log(emp) + unemp, 
data = Produc, index = c("state","year")) 
View(as.data.frame(fixef(zz))) 

불행히도 마지막 문장은 작동하지 않습니다.

내 예상 출력은 state이 첫 번째 열에 있고 고정 효과가 두 번째 데이터 프레임 인 데이터 프레임입니다.

내가 봤을했습니다, 그리고 내가 가지고 올 모든이있다 : Extract Fixed Effect and Random Effect in Dataframe

불행하게도 그 대답은 작동하지 않는 것 같습니다.

답변

1

이것은 쉽게 구성 할 수 있습니다. 우선 확인 대상의 어떤 종류의 fixef 반환 :

str(fixef(zz)) 
#Class 'fixef' atomic [1:48] 2.2 2.37 2.26 2.5 2.4 ... 
# ..- attr(*, "se")= Named num [1:48] 0.176 0.175 0.167 0.201 0.173 ... 
# .. ..- attr(*, "names")= chr [1:48] "ALABAMA" "ARIZONA" "ARKANSAS" "CALIFORNIA" ... 
# ..- attr(*, "type")= chr "level" 

fixef이 핵심 클래스 외에 길이 (48)의 원자 벡터가 속성이 클래스의 fixef '의 객체를 반환한다는 것을 우리에게 알려줍니다 3 개의 속성 "se", "names"(일반적으로 names 함수로 액세스 가능) 및 "type".

그럼 당신은이 작업을 수행 할 수 있습니다

data.frame(state = names(fixef(zz)), 
      fixef = as.vector(fixef(zz))) 
#   state fixef 
#1   ALABAMA 2.201617 
#2   ARIZONA 2.368088 
#3  ARKANSAS 2.263016 
# ... 

as.vector하는 것이 필요하다 data.frame 시도가 data.frame로 S3 객체를 강요하고 as.data.frame에 대한 대응 방법이 없기 때문입니다.

+0

이것은 분명히 올바른 대답입니다. 고맙습니다. 'str' 출력을위한 문서가 있습니까? 그것은 나에게 전혀 의미가 없으며, CRAN 문서는 도움이되지 않습니다 ... –

+0

나는 공식적인 문서를 넘어서는 것을 알지 못합니다. 나는 당신이 정확히 무엇인지 알고있는 구조체에 대한'str' 결과를 살펴볼 것을 제안한다. 이 구체적인 예에 ​​대한 설명을 추가하겠습니다. – Roland