首页 > 解决方案 > Rscript 无法识别先前创建的变量

问题描述

我正在准备一些 Rscript 自动化,当使用 Rscript 命令(在终端中)运行以下 3 个 R 文件时,运行 [result.R] 后出现以下错误:

Error: object 'a' not found
Execution halted.

我确实在 R 终端中检查了 Rscript 已经创建了变量 [a] 和 [b],所以似乎在运行最终的 Rscript 时,它没有识别出已经在 R 中创建了变量。

我正在运行带有 R 版本 3.4.4 的 Linux Ubuntu 16.04。所有文件都存储在同一个文件夹中。

以下是我的 R 脚本的内容:

#File: a.R
# Content:
a <- 1
save.image ('.RData')

#File: b.R
# Content:
b <- 2
save.image ('.RData')

#File: result.R
# Content: 
load('.RData')
c = a + b
save.image('.RData')

有效的场景:

如果我在 R 终端中创建变量 [a] 和 [b],然后使用 Rscript 运行 result.R,它不会抛出错误消息。

标签: rrscript

解决方案


您需要添加一个load('.RData')b.R. 防止从a.R.

#File: a.R
# Content:
a <- 1
save.image('.RData')

#File: b.R
# Content:
load('.RData')
b <- 2
save.image('.RData')

#File: result.R
# Content: 
load('.RData')
c = a + b
save.image('.RData')

推荐阅读