태그 보관물: anova

anova

강력한 표준 오류로 ANOVA 테이블을 얻는 방법? 질문은 기본 통계에

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

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

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

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

편집하다:

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

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

2

편집하다:

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



답변

선형 회귀 모형의 분산 분석은 해당 내포 모형의 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 공분산 행렬 추정값을 제공해야합니다. 비 제한적 모델.


답변

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


답변