0

我想从名为 Quandl 的在线数据库下载不同国家的同一指标的数据系列。我可以为每个请求使用相同的 URL,但我只需要更改国家代码。

下面的代码不起作用,有人可以帮助我使用正确的 R 代码吗?

这是我关于stackoverflow的第一个问题,如果我还没有达到所有stackoverflow规则的水平,请道歉。我曾尝试使用谷歌等搜索答案。到目前为止没有成功......

install.packages("Quandl")
library(Quandl)

x.df <- data.frame(x)

countries <- c("BE", "ESP")

for(i in countries){
    temp.df <- Quandl("AMECO/", i, "_1_0_319_0_UBLGAPS", start_date = "1995-12-30", collapse = "annual")
    x.df <- merge(x.df, temp.df, all=TRUE)
    }

我收到此错误消息:

match.arg(transform) 中的错误:
“arg”应该是“”、“diff”、“rdiff”、“normalize”、“cumul”、“rdiff_from”之一</p>

4

1 回答 1

0

解释引发特定错误的原因。这个电话:

 Quandl("AMECO/", i, "_1_0_319_0_UBLGAPS", start_date = "1995-12-30", collapse = "annual")

.... 有一堆未命名的参数,第三个参数"_1_0_319_0_UBLGAPS"在位置上与transformQuandl 函数中的参数匹配,该函数只接受错误消息中列出的值。这个从 Quandl/R 帮助页面修改的运行示例表明 Eric Lecoutre 的建议是正确的:

> data <- Quandl(code=paste0("WIKI/", "FB.", 11), 
                 start_date="2014-01-01", 
                 end_date="2014-12-31", 
                 collapse="monthly", 
                 transform="diff")
> str(data)
'data.frame':   11 obs. of  2 variables:
 $ Date      : Date, format: "2014-12-31" ...
 $ Adj. Close: num  0.32 2.71 -4.05 4.22 2.17 ...
 - attr(*, "freq")= chr "daily"

这个故事的寓意:当遇到 match.arg 错误时,返回并命名所有函数参数。

于 2016-07-13T16:07:13.250 回答