用R绘制DCC结果

时间:2013-05-02 22:48:31

标签: r graph vector

我一直在R上运行dcc garch;结果显示为矩阵

enter image description here

我想提取第二列作为绘图的矢量,在x轴上有日期。 目前,如果我定义 DCCrho = dccresults $ DCC [,2] 然后head(DCCrho)产生这个:

1 0.9256281

2 0.9256139

3 0.9245794 ...

任何帮助将此重新定义为数值的简单向量? 在x轴上用日期绘制dcc结果的任何其他选项? 非常感谢!

str(dccresults


尝试这个时

x< - cbind(DCCrho,com_30 [,2])

头(x)的

enter image description here

并且:  matplot(DCCrho~x [,2],x,xaxt =“n”,type ='l')

产生以下错误消息:

“数组中的错误(x,c(长度(x),1L),if(!is.null(names(x)))list(names(x),):   无效的第一个参数“

2 个答案:

答案 0 :(得分:1)

显然这是矢量的长度问题;日期和DCC结果需要是相同长度的向量。

还需要绘制日期和DCCrho,如下所示。

matplot(com_30$date, DCCrho, xaxt = "n", type='l')
axis(1, com_30$date, format(com_30$date, "%y"), cex.axis = .7)

答案 1 :(得分:0)

我假设当你说“我想提取第二行......”你实际上是指“列”,因为你做了以下事情:dccresults$DCC[,2]另外,正如以前的评论,代码不可复制,因此很难提出并肯定地回答。但是,我会尽我所能。

你说你想让DCCrho成为“数值的简单向量”。我假设这很大程度上取决于值的显示方式。 DCCrho = as.vector(dccresults$DCC[,2])看起来更好吗?

至于错误消息,我认为它是matplot(x,y, ...)中的b / c,x不能是公式。试试matplot(DCCrho, x[,2])

如果您只想在某个索引上绘制DCCrho值,可以尝试以下内容:

Y <- as.vector(dccresults$DCC[,2])
X <- seq_along(Y)
plot(X,Y)

这有用吗?除了任意时间索引之外,您打算将什么称为“时间”?我没有看到你提供的代码的一部分(例如,dccresults $ DCC中的一列),这显然是用作“日期”的候选者。