我有一个 R 脚本(一个 R 管道工 API),我已部署到 EC2 实例并使用 pm2 进行管理,但我遇到了一个棘手的问题。我已经查明了错误的确切位置,并希望能更好地理解这个错误。
当我在本地机器(Mac 上的 RStudio)上运行脚本时,它可以正常工作。Rscript myrfile.R
当我使用从 EC2 实例命令行运行脚本时,它会中断。
我已经指出,在 EC2 实例上破坏脚本的代码行及其错误是:
my_df <- my_df %>%
dplyr::mutate(AwayScore = ifelse(dplyr::row_number() == 1, 0, AwayScore),
HomeScore = ifelse(dplyr::row_number() == 1, 0, HomeScore))
# with the following error
<Rcpp::eval_error in mutate_impl(.data, dots): Evaluation error: argument "x" is missing, with no default.>
我 100% 确定 dplyr 已安装在 EC2 实例上,因为我的脚本始终使用它。我也 100% 确定my_df
这里的数据框有 AwayScore 和 homeScore 列,而且my_df
没有任何其他问题。
我只能假设这个错误是由 dplyr::row_number() 函数引起的,EC2 实例似乎无法处理该函数,尽管我对此并不肯定。
任何想法/帮助/我应该尝试/等的事情将不胜感激,谢谢!