>

내 데이터 샘플과 pgmm 코드를 참조하여 올바른 구문을 사용하고 있는지 알려주십시오.

Y1은 나의 종속 변수이고, C * 변수를 가진 X *는 나의 독립적이고 제어 변수입니다. 2 년 지연으로 동적 GMM 모델을 실행하려고하는데 이것이 PGMM을 처음 사용하는 경우이며 이것이 올바른 구문인지 확실하지 않습니다.

샘플 데이터

아래 pgmm 명령을 실행하려고합니다 :

country <- pdata.frame(country, index = c('Co_Code', 'YEAR'))
model.gmm <- Y1 ~ lag(X1, 2) + lag(X2, 2) + lag(X3, 2) + lag(X7, 2) + 
lag(X6, 2) + lag(X4, 2) + lag(X5, 2) + lag(X8, 2) + lag(X9, 2) + 
lag(X10, 2) + lag(C1, 2) + lag(C2, 2) + lag(C3, 2) + lag(C6, 2) + lag(C7, 2)
gmm.form = update.formula(model.gmm, . ~ . | lag(Y1, 2))
gmm.form[[3]] <- gmm.form[[3]][[2]]

gmm.fit <- pgmm(gmm.form, data = country, effect = "twoways", model = 
"twosteps") 
 summary(gmm.fit)

편집 : 아래 코드도 생성했습니다 :

gmm.fit <- pgmm(Y1 ~ X1 + X2 + X3 + X6 + X7 + X4 + X5 + X8 + X9 + X10 +    
 C1 + C2 + C3 + C6 |lag(X1, 2) + lag(X2, 2) + lag(X3, 2) + lag(X7, 2) + 
 lag(X6, 2) + lag(X4, 2) + lag(X5, 2) + lag(X8, 2) + lag(X9, 2) + 
 lag(X10, 2) + lag(C1, 2) + lag(C2, 2) + lag(C3, 2) + lag(C6, 2), data = 
 country, effect = "twoways", model = "twosteps")

  • 답변 # 1

    예, 업데이트 된 버전이 말한 내용에 맞게 나타납니다. dynformula를 사용하는 것이 좋습니다. 기본 구조는 다음과 같습니다.

    gmm.form <- dynformula(Y1~ X + C, lag.form=list(2,2,2))
    
    

    여러 X 및 C에 대해 쉽게 일반화됩니다 :

    gmm.form <- dynformula(Y1~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 +X10 + C1 + C2
    + C3 + C4 + C5 +C6, lag.form=list(rep(2,17)))
    
    

    이 명령은 모든 변수에 대해 최대 2 개의 지연을 포함하고 있음을 의미합니다 (위의 lag.form 목록에서 첫 번째는 Y1 - dynformula 입니다).   Y1 의 시차를 자동으로 넣습니다  등식의 오른쪽에 있습니다)

    [편집 : 악기를 지정하지 않았습니다. 지연된 Y의 표준 동적 패널 접근 방식에 대한 데이터 확인을 위해 gmm.inst=~Y1,gmm.lag=list(c(3,99)) 를 넣었습니다. ]

  • 이전 c# - SQL Azure 데이터베이스와 통신하는 NET Core 21의 앱 설정에서 연결 문자열 보안
  • 다음 reactjs - jest에서 mock 함수의 반환 값을 테스트하는 방법