getReturns中的“二进制运算符的非数值参数”错误

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月的最

出于某种原因,我通常在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月的最新文档也没有提及任何内容:


有人知道这里发生了什么吗?

这可能是函数名冲突的问题。运行

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等。