gpt4 book ai didi

R:将变量从 R 传递到 unix

转载 作者:行者123 更新时间:2023-12-01 13:49:00 25 4
gpt4 key购买 nike

我正在通过 bash 脚本运行 R 脚本,并希望将 R 脚本的输出返回给 bash 脚本,以便在那里继续使用它。

bash 是这样的:

#!/bin/bash
Rscript MYRScript.R
a=OUTPUT_FROM_MYRScript.R
do sth with a

R 脚本是这样的:

for(i in 1:5){
i
sink(type="message")
}

我希望 bash 当时使用来自 R 的一个变量,这意味着:bash 接收 i=1 并使用它,当该任务完成时,接收 i=2 等等。

有什么办法吗?

最佳答案

一种选择是使用 #!/usr/bin/env Rscript 使您的 R 脚本可执行(设置可执行位;例如 chmod 0755 myrscript.rchmod +x myrscript.r, etc...),就像对待任何其他命令一样对待它,例如将结果分配给下面的数组变量:

myrscript.r

#!/usr/bin/env Rscript
cat(1:5, sep = "\n")

mybashscript.sh

#!/bin/bash
RES=($(./myrscript.r))
for elem in "${RES[@]}"
do
echo elem is "${elem}"
done

nrussell$ ./mybashscript.sh
elem is 1
elem is 2
elem is 3
elem is 4
elem is 5

关于R:将变量从 R 传递到 unix,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33371196/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com