如何从sumurca对象中提取p值?

时间:2017-02-15 10:43:24

标签: r

我想从包ur.zaurca的摘要输出中提取p值。

library(urca)
data(nporg)
gnp <- na.omit(nporg[, "gnp.r"])
za.gnp <- ur.za(gnp, model="both", lag=2)
summary(za.gnp)

> summary(za.gnp)

################################ 
# Zivot-Andrews Unit Root Test # 
################################ 


Call:
lm(formula = testmat)

Residuals:
    Min      1Q  Median      3Q     Max 
-39.753  -9.413   2.138   9.934  22.977 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept)  21.49068   10.25301   2.096  0.04096 *  
y.l1          0.77341    0.05896  13.118  < 2e-16 ***
trend         1.19804    0.66346   1.806  0.07675 .  
y.dl1         0.39699    0.12608   3.149  0.00272 ** 
y.dl2         0.10503    0.13401   0.784  0.43676    
du          -25.44710    9.20734  -2.764  0.00788 ** 
dt            2.11456    0.84179   2.512  0.01515 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 13.72 on 52 degrees of freedom
  (3 observations deleted due to missingness)
Multiple R-squared:  0.9948,    Adjusted R-squared:  0.9942 
F-statistic:  1651 on 6 and 52 DF,  p-value: < 2.2e-16


Teststatistic: -3.8431 
Critical values: 0.01= -5.57 0.05= -5.08 0.1= -4.82 

Potential break point at position: 21 

我为lm摘要对象找到的所有方法似乎都不起作用。我花了很长时间搜索str(summary(za.gnp))无济于事。关于在哪里看的任何提示?

1 个答案:

答案 0 :(得分:1)

ur.za的对象是S4对象,其行为与lm生成的S3对象的行为不同。一个区别是通过@运算符访问的插槽的概念。

summary(za.gnp)pval个广告位,但其值为NULL

summary(za.gnp)@pval
NULL

但是,它还有一个testreg个插槽,其中包含一个lm对象,其中包含测试结果,可用于以通常的方式获取p值:

coef(summary(summary(za.gnp)@testreg))[,"Pr(>|t|)"]
 (Intercept)         y.l1        trend        y.dl1        y.dl2           du 
4.096351e-02 4.007914e-18 7.674887e-02 2.716223e-03 4.367588e-01 7.884201e-03 
          dt 
1.514797e-02