我一直在广泛关注以下内容。
有没有办法在R中使用Newey West(1994)估算器进行配对T检验?
t.test()给出了正确的t值,但后来我想纠正它们的自相关。这似乎不可能。
使用coeftest()有一种方法可以使用newey west校正,但仅用于独立t检验而不是配对t检验!
x <-rnorm(100)
k <-rnorm(100)
t.test(x,k, paired=TRUE)
现在让我们假设我知道我的数据(x和k)中存在自相关,因此我想使用Newey West估算器来纠正它。
有人想用t.test吗?
或者,可以使用以下内容:
fit<-lm(x~k)
coeftest(fit)
这是一项独立的t测试。任何人都知道如何用coeftest()进行配对t检验?
接下来,可以在t检验中嵌入NeweyWest估计量来调整自相关。
coeftest(fit, df=Inf, vcov=NeweyWest)
同样,我想通过配对t检验来做到这一点。
如果有人有任何见解,请告诉我。
答案 0 :(得分:1)
请注意任何相似之处?仍然没有弄清楚你所关注的问题,但我并不认为回归对应于独立的t检验。通过ind t-test,没有逐项配对,而在回归中,绝对是这样的配对。
t.test(x,k, paired=TRUE)
#--------------------
Paired t-test
data: x and k
t = -0.6008, df = 99, p-value = 0.5493
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-0.3746782 0.2005112
sample estimates:
mean of the differences
-0.0870835
#------------------
library(lmtest)
fit<-lm( (x-k) ~ 1)
lmtest::coeftest(fit)
#------------------
t test of coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.087083 0.144941 -0.6008 0.5493
答案 1 :(得分:0)
您可以在回归设置中执行配对t检验,方法是获取每对结果的差异并将其回归到向量的对数上。通过这种方式解决问题后,就可以轻松使用R中“ lmtest”库中的标准功能,包括NeweyWest估计器。代码段如下:
fit<-lm(x-k~1)
coeftest(fit, df=Inf, vcov=NeweyWest)