1

我正在使用 rugarch 包中的 sp500ret 数据:

library(rugarch)
data(sp500ret)

这是(至少我是这么认为的)一个数据框,它给出了回报。行名是日期。现在,我想绘制收益和日期,所以

plot(dates,sp500ret)

但是当然,这不起作用,因为没有指定日期,但是我怎样才能使用行名作为相应的日期呢?

注意:我不确定这一点,但我读了一些关于 xts 文件的内容。这是一个 xts 文件吗?在这种情况下如何绘制它?

编辑:我想过这样的事情,但它不起作用:

plot(as.Date(rownames(sp500ret), "%Y%m%d"),sp500ret)

第二次编辑:也plot(rownames(sp500ret),sp500ret[,1])不起作用。

4

1 回答 1

3

将行名转换为日期,如下所示:

library(rugarch)

data(sp500ret)

my.dates <- strptime(rownames(sp500ret), format="%Y-%m-%d")

plot(my.dates,sp500ret$SP500RET, xlab="Date", las=1, col="steelblue", pch=20)

# Or faster

plot(as.Date(rownames(sp500ret),"%Y-%m-%d"),sp500ret[,1])

日期图

# To specify custom x-axis

par(mar=c(7, 4, 4, 2) + 0.1, bg="white", cex=1.5) # extend margin

plot(my.dates,sp500ret$SP500RET, xlab="", las=1, col="steelblue", pch=20, xaxt="n")

axis.Date(1, at=seq(my.dates[1], my.dates[length(my.dates)], "years"),
          labels=seq(my.dates[1], my.dates[length(my.dates)], "years"),
          format= "%Y-%m-%d", las=2)

带有自定义 x 轴的日期图

于 2013-06-04T12:06:45.703 回答