我希望在linux下运行r blotter演示程序,但在运行演示程序(Amzn_test)时出现以下错误
> # update the portfolio stats
> updatePortf("amzn_port",Dates="2010-01-14")
Error in if (nzchar(intervals[1])) s <- as.POSIXlt(do.call(firstof, parse.side(intervals[1]))) :
argument is of length zero有趣的是,使用相同版本的R,一切都可以在Windows中正常运行。我是R的新手,在尝试解决问题时遇到了困难。我确实检查了Linux和Windows中的sessioInfo,除了我认为是特定于操作系统的区域设置之外,它们是匹配的。
在Linux上:
> sessionInfo()
R version 2.15.1 (2012-06-22)
Platform: x86_64-pc-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8 LC_MONETARY=en_US.UTF-8
[6] LC_MESSAGES=en_US.UTF-8 LC_PAPER=C LC_NAME=C LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] lattice_0.20-6 blotter_0.8.10 FinancialInstrument_1.0 quantmod_0.3-17 TTR_0.21-1 Defaults_1.1-1
[7] xts_0.8-6 zoo_1.7-7
loaded via a namespace (and not attached):
[1] grid_2.15.1 tools_2.15.1在Windows上:
> sessionInfo()
R version 2.15.1 (2012-06-22)
Platform: x86_64-pc-mingw32/x64 (64-bit)
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C
[5] LC_TIME=English_United States.1252 发布于 2012-08-26 07:26:26
此问题已在Rev.1133中进行了修补。代码在列表上使用time函数,而不是在列表包含的xts对象上使用。看起来这是一个问题已经有一段时间了,但是直到昨天显式地使用xts:::time.xts,一个不同的time方法才被调度,它很高兴地返回了与预期不同的值,没有错误。谢谢你的报告。
如果您需要有关签出、构建和安装最新版本的帮助,请参阅this post
https://stackoverflow.com/questions/12126192
复制相似问题