kører R fra Windows kommandoprompt

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg har et R-program i en txt-fil, siger "functions.txt".

Jeg indlæser "functions.txt" filen R ved hjælp af source("function.txt")
 og derefter ring funktioner f1(), f2() osv. som er angivet og defineret indenfor
 "function.txt" fil.

Jeg skal også indlæse et par R biblioteker ved hjælp af library(), før jeg kan bruge f1(), f2() osv.


Mit spørgsmål er, kan jeg opnå alt dette (dvs. kaldfunktionen f1() og f2()) fra Windows-prompt uden at åbne R-miljøet?


Så i det væsentlige vil jeg



  1. Indlæs R biblioteker jeg skal køre f1(), f2() osv.

  2. Indlæs filen function.txt

  3. Kør de enkelte funktioner f1 () osv.

  4. Optag resultatet



alt fra fra kommandoprompten til vinduer c:>


Jeg har Windows-version af R installeret på mine computere.

 Det ville være meget venligt at give et detaljeret svar, da jeg ikke er meget computerviden.


Hilsen

Bedste reference


Barts post er korrekt, men det kan gøres enklere. Hvis koden


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

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

f1()
f2()


er i en fil 'myRcode.R'; derefter


Rscript myRcode.R


vil indlæse og udføre det, herunder de to funktionsopkald.


Rscript.exe er i samme mappe som R.exe - hvilket man måske skal tilføje til $PATH.

Andre referencer 1


Følgende 'virker på min maskine' (ikke Windows dog, men det skal ...):


Hvis din functions.txt ligner:


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

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


kommandoen:


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


skal oprette filen out.txt indeholdende:


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

Andre referencer 2


Her er et kommandolinjeskript baseret på kode ovenfor:


d:misc2inRscript.exe    d:
\_codemycode.r


Ved hjælp af Windows 7 sprang jeg det som en .bat-fil. Fungerer fint Tak for tipet. (selvfølgelig er disse bare mine underkataloger)