R将rugarch输出放入数据帧

时间:2013-04-13 20:15:05

标签: r

我已更新到R的最新版本并更新了rugarch包。 不幸的是,一些以前工作的代码不再有效。我现在得到一个错误。 我很乐意帮助将输出转换为数据帧。

library(rugarch)
data(sp500ret)
spec = ugarchspec(  )
fit1 = ugarchfit(spec =  spec, data = sp500ret)
df.fit1 <- as.data.frame(fit1,which="VaR")

Error in as.data.frame.default(fit1, which = "VaR"): 
cannot coerce class "structure("uGARCHfit", package = "rugarch")" to a 
data.frame 
attributes(fit1)

所示:$fit$sigma

但是当我尝试时:

df1 <- data.frame(fit1$fit$sigma)

我收到错误消息;

Error in fit1$fit : $ operator not defined for this S4 class

1 个答案:

答案 0 :(得分:3)

  1. as.data.frame(fit1,其中=“VaR”)从未使用类uGARCHfit的对象(您将此与uGARCHroll对象混淆)。如果你想要条件VaR,你可以现在(在新版本中)使用分位数方法,例如分位数(fit1,c(0.01,0.05))。
  2. 如果你想要条件标准差,那么你应该使用sigma(fit1),它将返回一个xts矩阵,或者fit1 @fit $ sigma(@在S4类中的一个对象之后)。通过仔细阅读文档,插图和作者网站(包含更改的详细信息),可以回答这个问题和大多数其他问题。
  3. 您应该按照软件包中的说明清楚地说明有关rugarch的问题应该发布到R-SIG-FINANCE邮件列表而不是堆栈溢出。
  4. -Alexios