本文介绍了在 R 中使用 Quantmod 进行下载-保存-加载往返的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用 quantmod 下载数据,将它们保存到文件中以便稍后加载.

I want to download data using quantmod, save them to files to be loaded later.

下面一段R代码

library(quantmod)

symbols <- c("DEXUSUK", "STLFSI", "GDP")
tmpdir <- tempdir()

getSymbols(symbols, src="FRED")
saveSymbols(symbols, file.path=tmpdir)

rm(list = symbols)

getSymbols(symbols, src="RData", dir=tmpdir, extension="RData")

在最后一行产生错误:

Error in `colnames<-`(`*tmp*`, value = c("DEXUSUK.Open", "DEXUSUK.High",  : length of 'dimnames' [2] not equal to array extent

在临时文件中创建了有效的 .RData 文件.位置并且可以单独加载().

Yet valid .RData files get created in the temp. location and can be load()-ed individually.

这是 quantmod 中的问题(在 R 3.1.2 上使用 0.4-3 版)还是这种用法无效?

Is this a problem in quantmod (using version 0.4-3 on R 3.1.2) or is this usage invalid?

推荐答案

需要指定col.names

getSymbols(symbols, src="RData", dir=tmpdir, extension="RData", col.names="Close")
#[1] "DEXUSUK" "STLFSI"  "GDP"  

这篇关于在 R 中使用 Quantmod 进行下载-保存-加载往返的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-30 08:22