getReturns中的“二进制运算符的非数值参数”错误
出于某种原因,我通常在Rstudios中运行的代码不再工作。我希望有人有过类似的经历,并且了解发生了什么getReturns中的“二进制运算符的非数值参数”错误,r,finance,quantmod,stocks,R,Finance,Quantmod,Stocks,出于某种原因,我通常在Rstudios中运行的代码不再工作。我希望有人有过类似的经历,并且了解发生了什么 getReturns(c('C','BAC'), start='2004-01-01', end='2008-12-31') 这导致: Error in unclass(e1) + unclass(e2) : non-numeric argument to binary operator 我在网上或stackoverflow上都找不到解决此问题的任何内容。此外,我看到2014年7月的最
getReturns(c('C','BAC'), start='2004-01-01', end='2008-12-31')
这导致:
Error in unclass(e1) + unclass(e2) :
non-numeric argument to binary operator
我在网上或stackoverflow上都找不到解决此问题的任何内容。此外,我看到2014年7月的最新文档也没有提及任何内容:
有人知道这里发生了什么吗?这可能是函数名冲突的问题。运行
timeSeries::getReturns(c('C','BAC'), start='2004-01-01', end='2008-12-31')
给我错误,但正在运行
stockPortfolio::getReturns(c('C','BAC'), start='2004-01-01', end='2008-12-31')
很好
这是怎么发生的
您必须已加载stockPortfolio包,然后加载timeSeries或其他依赖于timeSeries的包。通过控制台查看如下消息:
The following object is masked from ‘package:stockPortfolio’:
getReturns
如上图所示,使用双冒号运算符显式告诉R要查找哪个包。这可能是函数名冲突问题。运行
timeSeries::getReturns(c('C','BAC'), start='2004-01-01', end='2008-12-31')
给我错误,但正在运行
stockPortfolio::getReturns(c('C','BAC'), start='2004-01-01', end='2008-12-31')
很好
这是怎么发生的
您必须已加载stockPortfolio包,然后加载timeSeries或其他依赖于timeSeries的包。通过控制台查看如下消息:
The following object is masked from ‘package:stockPortfolio’:
getReturns
如上图所示,使用双冒号运算符明确告诉R要查找哪个包。在R降价程序中使用stockPortfolio时,我也遇到类似问题。 在R文件中工作的代码在rmd文件中不工作
```{r p3}
recordState()
ff <- allFunds1$Fund
returns <-stockPortfolio::getReturns(ff,freq="month")
save(allFunds1,file='allFunds1.rda')
```
My recordState函数将搜索结果和sessionInfo保存在区块中:
[1] "search:"
[1] ".GlobalEnv" "tools:rstudio" "package:stats"
[4] "package:graphics" "package:grDevices" "package:utils"
[7] "package:datasets" "package:methods" "Autoloads"
[10] "package:base"
[1] "sessionInfo():"
R version 3.3.2 (2016-10-31)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X Yosemite 10.10.5
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] Rcpp_0.12.9 digest_0.6.11 dplyr_0.5.0
[4] rprojroot_1.2 assertthat_0.1 R6_2.2.0
[7] xtable_1.8-2 DBI_0.5-1 backports_1.0.5
[10] magrittr_1.5 evaluate_0.10 stringi_1.1.2
[13] stockPortfolio_1.2 rmarkdown_1.3 tools_3.3.2
[16] stringr_1.1.0 readr_1.0.0 yaml_2.1.14
[19] htmltools_0.3.5 knitr_1.15.1 tibble_1.2
最初的帖子表明,这个错误可能是由于将stockPortfolio::getReturns与timeSeries中的函数混淆所致,但我使用了全名,并且没有加载任何一个库 我在R降价计划中使用股票组合时遇到了类似的问题。 在R文件中工作的代码在rmd文件中不工作
```{r p3}
recordState()
ff <- allFunds1$Fund
returns <-stockPortfolio::getReturns(ff,freq="month")
save(allFunds1,file='allFunds1.rda')
```
My recordState函数将搜索结果和sessionInfo保存在区块中:
[1] "search:"
[1] ".GlobalEnv" "tools:rstudio" "package:stats"
[4] "package:graphics" "package:grDevices" "package:utils"
[7] "package:datasets" "package:methods" "Autoloads"
[10] "package:base"
[1] "sessionInfo():"
R version 3.3.2 (2016-10-31)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X Yosemite 10.10.5
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] Rcpp_0.12.9 digest_0.6.11 dplyr_0.5.0
[4] rprojroot_1.2 assertthat_0.1 R6_2.2.0
[7] xtable_1.8-2 DBI_0.5-1 backports_1.0.5
[10] magrittr_1.5 evaluate_0.10 stringi_1.1.2
[13] stockPortfolio_1.2 rmarkdown_1.3 tools_3.3.2
[16] stringr_1.1.0 readr_1.0.0 yaml_2.1.14
[19] htmltools_0.3.5 knitr_1.15.1 tibble_1.2
最初的帖子表明,这个错误可能是由于将stockPortfolio::getReturns与timeSeries中的函数混淆所致,但我使用了全名,并且没有加载任何一个库 是的,当然有!重新启动计算机、重新启动Rstudios等。是的,当然有!重新启动计算机、重新启动Rstudios等。