Подтвердить что ты не робот

Запуск R из командной строки Windows

У меня есть программа R в файле txt, скажем "functions.txt".
Я загружаю файл "functions.txt" в R, используя source("function.txt")  а затем вызывать функции f1(), f2() и т.д., которые объявляются и определяются внутри  "function.txt".
Мне также нужно загрузить несколько R-библиотек, используя library(), прежде чем я смогу использовать f1(), f2() и т.д.

Мой вопрос: могу ли я получить все это (например, вызывающую функцию f1() и f2()) из приглашения Windows без открытия среды R?

Итак, я хочу

  • загрузите библиотеки R, которые мне нужно запустить f1(), f2() и т.д.
  • загрузите файл function.txt
  • запустить отдельные функции f1() и т.д.
  • записать результат

все из командной строки windows c:\>

У меня на вашем компьютере установлена ​​версия R.
 Было бы очень любезно дать подробный ответ, поскольку я не очень разбираюсь в компьютерах.

Привет

4b9b3361

Ответ 1

Сообщение Bart верное, но это можно сделать проще. Если код

f1 <- function() {
  print("A")
}

f2 <- function() {
  print("B")
}

f1()
f2()

находится в файле 'myRcode.R'; затем

Rscript myRcode.R

загрузит и выполнит его, включая два вызова функций.

Rscript.exe находится в том же каталоге, что и R.exe, который, возможно, придется добавить в $PATH.

Ответ 2

Следующее "работает на моей машине" (но не Windows, но оно должно...):

Если ваш functions.txt выглядит следующим образом:

f1 <- function()
{
  print("A")
}

f2 <- function()
{
  print("B")
}

команда:

Rscript -e "source('functions.txt');f1();f2()" > out.txt

должен создать файл out.txt, содержащий:

[1] "A"
[1] "B"

Ответ 3

Здесь приведена командная строка script, основанная на коде выше:

d:\misc2\bin\Rscript.exe    d:\r_code\mycode.r

Используя Windows 7, я запустил его как .bat файл. Работает отлично. Спасибо за совет. (конечно, это только мои отдельные подкаталоги)