2017-05-25 98 views
1

我在Windows上使用R版本3.3.1(2016-06-21)Gui。我想打开一个文件(可能是一个.txt文件,可能是一个.R文件,任何类型的文件),它会启动R并运行写入该文件的代码。我可以打开一个文件让R运行代码吗?

这可能吗?如果是这样,我该怎么做?

我的目标是为我的同事提供一种方法,让他们双击文件并在R中运行后查看我的脚本的结果。现在他们正在从.txt文件复制我的所有代码,将其粘贴到R.

感谢

+1

我想你想要一个'.bat'文件,参见* eg *答案在这里:https://stackoverflow.com/questions/17811871/run-r-script-from-bat-batch-file – neilfws

+0

'source (“你的文件路径”)会比复制和粘贴好一点。 –

回答

1

除了使用批处理文件是完全做一个Windows快捷方式。 例如,我的Windows系统上:

  1. 创建一个快捷方式c:/path/to/bin/Rscript.exe

    对我来说,Windows有一个“向导”帮助我做到这一点,这迫使我只是识别可执行文件。从这里,无论是Alt键 - 的链接进入或单击鼠标右键,选择属性,然后继续:

  2. 更改“开始”到相应的目录。如果您依赖于特定的依赖关系路径,请确保您设置了这个(和/或在您的R脚本中使用setwd(...))。

  3. 将文件名添加到“Target”中的命令行中,可能类似C:\R\R-3.3.3\bin\Rscript.exe myscript.R。在这个例子中,myscript.R必须存在于“开始”中的目录中,尽管没有任何东西阻止你对完整路径进行硬编码。

使用这里the link in @neilfws's comment或信息(How can I read command line parameters from an R script?,既马立克氏和德克的回答),你可以很容易地使反应运行时间参数。例如,如果脚本包括:

opts <- commandArgs() 

opts然后将是一个向量character

c("C:\\R\\R-3.3.3\\bin\\x64\\Rterm.exe", "--slave", "--no-restore", "--file=myscript.R", "--args", "C:\\path\\to\\dragged_file") 

和脚本可以“反应”来拖动到该图标的文件(或目录)。

所有这一切的一个问题是,它完全是非交互式的。如果你需要用户弹出窗口,图形或其他“话语”,你需要一些不同的东西。

+0

谢谢!设置打开.txt文件到Rscript.exe的默认程序工作得很好。 – Simon

相关问题