3

我正在尝试将quantmod 网站上的代码用于 3d 图。我按照说明输入了 2010 年(因为找不到 2008 年的链接)。但是,当我在 R 提示符下输入此命令时:

 chartSeries3d0(TR)

我收到以下错误:

Error in if (on == "years") { : missing value where TRUE/FALSE needed

我对 R 比较陌生,所以任何人都可以帮我解决它。

4

1 回答 1

3

自从创建该示例以来,财政部重新设计了其网站,因此代码不会下载任何数据(无论您输入哪一年)。getUSTreasuries您可以直接从 FRED 中提取数据,而不是使用该函数。

library(quantmod)
source("http://www.quantmod.com/examples/chartSeries3d/chartSeries3d.alpha.R")

getSymbols("DGS1MO;DGS3MO;DGS6MO;DGS1;DGS2;DGS3;DGS5;DGS7;DGS10;DGS20;DGS30",
  src="FRED")
TR <- merge(DGS1MO,DGS3MO,DGS6MO,DGS1,DGS2,DGS3,DGS5,
  DGS7,DGS10,DGS20,DGS30, all=FALSE)
colnames(TR) <- c("1mo","3mo","6mo","1yr","2yr","3yr","5yr",
  "7yr","10yr","20yr","30yr")
TR <- na.locf(TR)

chartSeries3d0(TR["2011"])
于 2011-09-11T12:39:06.123 回答