강력한 표준 오류로 ANOVA 테이블을 얻는 방법?


10

R의 plm 패키지를 사용하여 풀링 된 OLS 회귀를 실행하고 있습니다.하지만 내 질문은 기본 통계에 대한 것이므로 먼저 여기에 게시하십시오.)

내 회귀 결과가이 분산 잔차를 생성하므로이 분산 강건한 표준 오류를 사용하려고합니다. 결과적으로 coeftest(mod, vcov.=vcovHC(mod, type="HC0"))각 독립 변수에 대한 추정치, 표준 오류, t- 값 및 p- 값이 포함 된 표를 얻습니다. 기본적으로 내 "강력한"회귀 결과입니다.

다른 변수의 중요성을 논의하기 위해 각 독립 변수에 의해 설명 된 분산의 몫을 플로팅하고 싶습니다. 따라서 각각의 제곱합이 필요합니다. 그러나 function aov()사용하면 강력한 표준 오류를 사용하도록 R에 지시하는 방법을 모르겠습니다.

이제 내 질문은 : 강력한 표준 오류를 나타내는 ANOVA 테이블 / 제곱합을 얻는 방법은 무엇입니까? 정상적인 표준 오류로 회귀 분석에서 ANOVA 테이블을 기반으로 계산할 수 있습니까?

편집하다:

다시 말해 내 R 문제를 무시하고

R 가 강력한 표준 오차를 사용하여 영향을받지 않는 경우 다른 설명 변수에 의한 설명 된 분산에 대한 각각의 기여도 변경되지 않습니까?2

편집하다:

R에서 aov(mod)실제로 패널 모델 (plm)에 대한 올바른 분산 분석표가 제공됩니까?

답변:


12

선형 회귀 모형의 분산 분석은 해당 내포 모형의 Wald 검정 (및 우도 비 검정)과 같습니다. 따라서 HC (heteroskedasticity-consistent) 표준 오류를 사용하여 해당 검정을 수행하려는 경우, 제곱합을 분해하여 얻을 수는 없지만 HC 공분산 추정을 사용하여 Wald 검정을 수행 할 수 있습니다. 이 아이디어는 모두 사용 Anova()하고 linearHypothesis()으로부터 car패키지 coeftest()및 waldtest()으로부터 lmtest패키지로 제공된다. 후자 3 개도 plm객체 와 함께 사용할 수 있습니다 .

간단한 (매우 흥미 롭거나 의미있는 것은 아니지만) 예제는 다음과 같습니다. 우리는의 표준 모델 사용 ?plm매뉴얼 페이지를 모두의 중요성에 대한 월드 테스트를 수행 할 log(pcap)및 unemp. 다음 패키지가 필요합니다.

library("plm")
library("sandwich")
library("car")
library("lmtest")

모델 (대안)은 다음과 같습니다.

data("Produc", package = "plm")
mod <- plm(log(gsp) ~ log(pc) + log(emp) + log(pcap) + unemp,
  data = Produc, index = c("state", "year"))

먼저 모든 개별 계수에 대한 HC 표준 오차로 한계 Wald 검정을 살펴 보겠습니다.

coeftest(mod, vcov = vcovHC)

t test of coefficients:

            Estimate Std. Error t value  Pr(>|t|)    
log(pc)    0.2920069  0.0617425  4.7294 2.681e-06 ***
log(emp)   0.7681595  0.0816652  9.4062 < 2.2e-16 ***
log(pcap) -0.0261497  0.0603262 -0.4335   0.66480    
unemp     -0.0052977  0.0024958 -2.1226   0.03411 *  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

그리고 우리는 모두를위한 월드 테스트 수행 log(pcap)및 unemp:

linearHypothesis(mod, c("log(pcap)", "unemp"), vcov = vcovHC)

Linear hypothesis test

Hypothesis:
log(pcap) = 0
unemp = 0

Model 1: restricted model
Model 2: log(gsp) ~ log(pc) + log(emp) + log(pcap) + unemp

Note: Coefficient covariance matrix supplied.

  Res.Df Df  Chisq Pr(>Chisq)  
1    766                       
2    764  2 7.2934    0.02608 *
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

또는 mod0두 계수없이 귀무 가설 ( 예 :)에 모델을 적합시킨 다음 다음을 호출 할 수도 있습니다 waldtest().

mod0 <- plm(log(gsp) ~ log(pc) + log(emp),
  data = Produc, index = c("state", "year"))
waldtest(mod0, mod, vcov = vcovHC)

Wald test

Model 1: log(gsp) ~ log(pc) + log(emp)
Model 2: log(gsp) ~ log(pc) + log(emp) + log(pcap) + unemp
  Res.Df Df  Chisq Pr(>Chisq)  
1    766                       
2    764  2 7.2934    0.02608 *
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

시험 통계 및 p- 값에 의해 계산 linearHypothesis()과 waldtest()정확히 동일하다. 인터페이스와 출력 형식 만 약간 다릅니다. 경우에 따라 둘 중 하나가 더 단순하거나 직관적입니다.

참고 : vocvHC(mod)공분산 행렬 추정기 (예 :와 같은 함수) 대신 공분산 행렬 추정치 (예 :와 같은 행렬 ) vocvHC를 제공하는 경우, 대안에 따라 모델의 HC 공분산 행렬 추정값을 제공해야합니다. 비 제한적 모델.


1
내가 올바르게 이해하면 Wald-test는 특정 변수를 포함시키는 것이 중요한지 여부를 보여줍니다. 그러나 실제로 제곱의 합과 같이 모델 을 얼마나 향상 시킬지에 대한 척도가 있습니까?
— Aki

HAC 표준 오류를 어떻게 구현할 수 있습니까? coeftest (mod, vcov = vcovHAC)를 시도했지만 "c ( 'plm', 'panelmodel') 클래스의 개체에 적용되는 'estfun'에 해당하는 방법이 없습니다"라는 오류 메시지가 나타납니다. 또는 추정 함수를 먼저 사용하십시오. 어떤 방법을 추천 하시겠습니까?
— Aki

그동안 plm패키지는 방법이있다 vcovHC()로부터 일반적인 sandwich패키지를,이 방법을 제공하지 않습니다 vcovHAC(). 대신 plm직렬 상관도 포함 할 수있는 패널 모델에서 공분산 행렬 계산을위한 전용 기능이 제공됩니다. vcovNW()또는 vcovSCC()패키지를 참조하십시오 plm.
— Achim Zeileis

감사합니다! 내가 이해하는 한 두 기능은 자기 상관 강한 SE와 관련이 있습니다. 이분산성 및 자기 상관 강한 SE 모두에 사용될 수있는 기능이 있습니까?
— Aki

세 가지 기능 ( vcovHAC, vcovNW, vcovSCC) ... HAC 무엇의 약자인지 그의 _H_eteroskedasticity 및 _A_utocorrelation _C_onsistent 있습니다.
— Achim Zeileis

2

이것은 패키지 의 Anova기능 으로 수행 할 수 있습니다 car. 분산 분석에서 이분산성을 다루기위한 다른 기술에 대한 자세한 내용과 검토는 이 탁월한 답변 을 참조하십시오 .


감사합니다. 문제는 Anova ()가 plm 유형 (panelmodel)의 모델에서는 작동하지 않는 것입니다.
— Aki

@Aki 풀리지 않은 OLS는 비 네트에 표시된 내용에 따라 일반 OLS와 동일합니다. cran.r-project.org/web/packages/plm/vignettes/plm.pdf
— shadowtalker

@Aki 그러나 더 풍부한 ANOVA 모델에 관심이있는 것 같습니다. 여기에 몇 가지 R 예제가 있습니다 : stats.stackexchange.com/questions/3874/…
— shadowtalker
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.