【发布时间】:2021-06-02 07:29:10
【问题描述】:
上下文:我正在使用 R 包 rugarch 估计几种不同的规范。以 2 为例(y 是数据):
garchmodel<-ugarchspec()
garchfit = ugarchfit(spec=garchmodel, y)
egarchmodel<-ugarchspec(variance.model = list(model = "eGARCH")
egarchfit<-ugarchfit(spec=egarchmodel, y)
我写了一个函数来收集模型的信息标准:
CollectInfoCrieria <- function(models){
infoMat <- t(sapply(models, infocriteria))
return(infoMat)
}
如果我然后输入
themodels = c(garchfit, egarchfit)
CollectInfoCrieria(themodels)
我获得了一个矩阵,其中包含每行每个模型规范的信息标准。我想将模型名称转换为字符串以用作行名称,如我所愿。 如果我再定义一个函数
getName<-function(names) deparse(substitute(names))
然后 getName(garchfit) 给出“garchfit”,而
models <- c(garch11fit, egarchfit)
sapply(models, getName)
给予
[1] "X[[i]]" "X[[i]]"
我怎样才能得到
[1] "garch11fit" "egarchfit"
【问题讨论】: