我正在进行一次相当耗时的详尽回测,其中涉及对xts对象的大量操作;如果回测试完成则需要一两天。
我一直遇到如下错误
Error in merge.xts(x, round(y), :
Value of SET_STRING_ELT() must be a 'CHARSXP' not a 'raw'
在进一步检查合并的输入时,会发现round(y)很好(它是一个“数字”向量),但是
> x
Error in print.default(xx, ...) : 'getCharCE' must be called on a CHARSXP
在发生错误时,此特定合并已经过(不同数量)回溯测试的先前迭代。
以前,我也看到了'builtin'而不是'raw'的类似错误。
不幸的是,我无法创建一个小的(甚至是非巨大的)可重现的例子。
每次在不同的迭代上发生错误,可能表明它与R之外的条件有某种关系(我有足够的ram备用。)
编辑:这是sessionInfo()
> sessionInfo()
R version 2.14.1 (2011-12-22)
Platform: i686-pc-linux-gnu (32-bit)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=C LC_NAME=C
[9] 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] quantmod_0.3-17 TTR_0.21-0 Defaults_1.1-1 xts_0.8-6
[5] zoo_1.7-7
loaded via a namespace (and not attached):
[1] grid_2.14.1 lattice_0.20-6
我们非常感谢任何建议。