我是ts的新手,而xts是对象。
在处理时间序列数据时,我遇到了问题
require(quantmod)
require(forecast)
ticker <- "^GSPC"
getSymbols(ticker, src="yahoo", to = "2013-12-31")
prices <- GSPC[,6] # First get data using package quantmod
# then forecasting using package forecast
prices.ts <- as.ts(prices)
prices.ets <- ets(prices.ts)
prices.fore <- forecast(prices.ets, h=10)
# then plot
plot(prices.fore, xaxt = "n")
我的问题是:
1。当我试图在csv文件中保存带有日期的GSPC时。我搜索并尝试了这个
write.zoo((GSPC, file = "GSPC.csv", sep = ",", qmethod = "double"))
错误消息:Error: unexpected ',' in "write.zoo((GSPC,"
,我检查了语法,似乎是正确的,我尝试了其他组合。所有失败的类似错误消息。
我也尝试index(GSPC)
来获取日期。
然后cbind(index(GSPC), GSPC[, 6])
。它也失败了..
错误讯息:Error in merge.xts(..., all = all, fill = fill, suffixes = suffixes) :
dims [product 1762] do not match the length of object [3524]
但是当我检查了长度
> length(GSPC[,6])
[1] 1762
> length(index(GSPC))
[1] 1762
2。情节是这样的
没有x-lab和y-lab。我尝试了here发布的已接受答案的方法。但失败了。
特别是,我没有达到以下代码的目的。它似乎改变了情节的外观,但它根本不会改变外观。我不知道我是否会失去一些积分。
a = seq(as.Date("2011-11-01"), by="weeks", length=11)
axis(1, at = decimal_date(a), labels = format(a, "%Y %b %d"), cex.axis=0.6)
abline(v = decimal_date(a), col='grey', lwd=0.5)
另外,我想从as.Date(“2013-01-01”)绘制。
你能提出一些建议吗?非常感谢!
答案 0 :(得分:1)
您还有其他括号。使用
write.zoo(GSPC, file = "GSPC.csv", sep = ",", qmethod = "double")
我不知道您尝试使用index
和cbind
命令实现了什么目标。 index
不提供数据。如果您希望GSPC
的第6列只使用GSPC[,6]
。
看起来你有一些非标准的绘图尺寸。启动一个新的图形窗口,您将它们重置为默认值。但除非明确指定,否则你不会得到xlab和ylab。而且你不会得到x轴因为你设置了xaxt="n"
有关最后一个代码块的问题似乎与您的数据无关。