如何从Matlab运行R脚本

时间:2013-09-24 12:55:37

标签: r matlab

我有.m文件,使用它我想运行R脚本。我怎么能这样做。

Matlab文件

caller.m

%some matlab code

% need to call a R script

%some matlab code

R脚本

script.R 

some R code

我将这两个文件放在同一个文件夹中。

如何从caller.m运行script.R?


Drew Steen的回答一般都是正确的,因为我在网上的大部分地方都发现了这一点。 但是对我来说有用,我在下面描述:

步骤:

  1. 将“C:\ Program Files \ R \ R-2.15.3 \ bin \ x64”追加到“path”变量。 这个link提供了在windows 7 os中设置路径的过程。 请注意bin \ x64而不是bin,bin对我没用。

  2. 重启Matlab。

  3. 使用exec = system('Rscript.exe script.R'),其中当前script.R位于matlab的当前目录中。

1 个答案:

答案 0 :(得分:2)

您可以使用MATLAB中的system函数来执行shell命令。由于您可以从批处理文件中运行R,

executed = system('R CMD BATCH path/script.R')

应该有效。请注意,path将需要是来自MATLAB中的任何活动目录的R脚本的正确相对路径。如果系统命令成功执行,则executed将评估为0(这与R脚本执行成功不同)。