将数组从php通过命令行传递给R

Nem*_*nja 5 php r command-line-arguments s

我有一个问题,我正在通过命令行从php执行R脚本,我需要给它两个数组进行计算.

我通过运行来调用脚本:

Rscript nls.R ??? ???
Run Code Online (Sandbox Code Playgroud)

??? 和??? 是我的数组,我需要"给"R,以便它计算某些值.

谁知道怎么做?它不仅限于php,因为它是命令行 - 我只需要知道数组是否可以通过命令行传递给R,以及如何.

R怎么会抓住它,用什么命令?

非常感谢.

问候

Tim*_*imo 4

您正在寻找的命令是commandArgs().

现在,如果您有一个列表,如果字符串中的整数以逗号分隔,则可以获得整数

s = '1,2,3,4,5'
your_list = lapply(strsplit(s, ','), as.numeric)[[1]]
Run Code Online (Sandbox Code Playgroud)

可能有更直接的方法来实现这一目标。

编辑:

更好的例子(也应该与 Rscript 一起使用)

$ R "1,2,3,4,5"
...

>lapply(strsplit(commandArgs()[[2]], ','), as.numeric)[[1]]
[1] 1 2 3 4 5
Run Code Online (Sandbox Code Playgroud)