【问题标题】:Extracting some values from output of an analysis in R从 R 中的分析输出中提取一些值
【发布时间】:2017-09-04 13:14:53
【问题描述】:

我想将一些分析值(单位根分析)提取到一个列表中(比如说 list1)。但是我无法提取这些值。

数据如下:

> data
 [1]  0.000000000  0.000000000 -0.016800849 -0.005674109 -0.028815092  0.011629070 -0.005805695  0.011561935  0.005739148  0.005690635  0.022474958
[12]  0.038147810 -0.005355004  0.026521835  0.025850717  0.025185460 -0.004994926  0.019804531 -0.014809606  0.004956367 -0.009951292  0.067665001
[23]  0.009303233  0.009217480 -0.018520713 -0.018870213 -0.038843496 -0.009951292  0.058274404  0.063954399  0.043288692  0.081342150  0.015505687
[34] -0.007722791  0.007722791  0.037743885 -0.007435669  0.000000000 -0.007491372 -0.015153238 -0.071171939 -0.041850997 -0.008572604 -0.026204595
[45]  0.026204595  0.042192350 -0.016668594  0.024899845 -0.008231251  0.079403190

代码如下:

library(urca)
adf1<-ur.df(data, type = "drift", lags = 1, selectlags = "BIC")

分析总结如下:

> summary(adf1)

############################################### 
# Augmented Dickey-Fuller Test Unit Root Test # 
############################################### 

Test regression drift 


Call:
lm(formula = z.diff ~ z.lag.1 + 1 + z.diff.lag)

Residuals:
      Min        1Q    Median        3Q       Max 
-0.070631 -0.021526 -0.004443  0.015088  0.072395 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)   
(Intercept)  0.004997   0.004444   1.125  0.26674   
z.lag.1     -0.546913   0.178716  -3.060  0.00372 **
z.diff.lag  -0.173281   0.159606  -1.086  0.28340   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.0298 on 45 degrees of freedom
Multiple R-squared:  0.3167,    Adjusted R-squared:  0.2863 
F-statistic: 10.43 on 2 and 45 DF,  p-value: 0.0001899


Value of test-statistic is: -3.0602 4.7498 

Critical values for test statistics: 
      1pct  5pct 10pct
tau2 -3.58 -2.93 -2.60
phi1  7.06  4.86  3.94

我要提取

  • “测试统计值”-3.0602 和 4.7498 作为 list1 的第一个参数
  • “多重 R 平方”0.3167 作为 list1 的第二个参数

但是,我无法做到这一点。 adf1 的类如下所示。

> class(adf1)
[1] "ur.df"
attr(,"package")
[1] "urca"

我会很高兴得到任何帮助。非常感谢。

【问题讨论】:

    标签: r


    【解决方案1】:

    试试这个:

    list(teststat = adf1@teststat, r2 = adf1@testreg$r.squared) 
    

    我通常会尝试使用 str() 查看输出的结构,并查看是否可以使用 @ 或 $ 访问信息(如插槽)。

    【讨论】:

      猜你喜欢
      • 2017-10-14
      • 2018-12-06
      • 1970-01-01
      • 1970-01-01
      • 2021-02-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多