SORU
27 Ocak 2010, ÇARŞAMBA


Nasıl R bir komut dosyası komut satırı parametreleri okuyabilir miyim?

Hangi komut satırı parametreleri birkaç kod parametre değerleri koda yerine () tedarik edebilmek istiyorum R bir senaryo var. Komut dosyası Windows üzerinde çalışır.

Parametreler R benim komut dosyası içine komut satırı üzerinde temin okumak için nasıl bir bilgi bulamıyorum. Eğer yapılabilir mi şaşırırım, belki de sadece benim Google Arama ve en iyi anahtar kelimeleri kullanmıyorum

Herhangi bir tavsiye ya da öneriler?

CEVAP
28 Ocak 2010, PERŞEMBE


Dirk's answer ihtiyacınız olan her şey. Sana küçük bir örnek veriyorum.

İki dosya hazırladım: exmpl.bat exmpl.R.

  • exmpl.bat:

    set R_Script="C:\Program Files\R-3.0.2\bin\RScript.exe"
    %R_Script% exmpl.R 2010-01-28 example 100 > exmpl.batch 2>&1
    

    Alternatif olarak Rterm.exe kullanarak:

    set R_TERM="C:\Program Files\R-3.0.2\bin\i386\Rterm.exe"
    %R_TERM% --no-restore --no-save --args 2010-01-28 example 100 < exmpl.R > exmpl.batch 2>&1
    
  • exmpl.R:

    options(echo=TRUE) # if you want see commands in output file
    args <- commandArgs(trailingOnly = TRUE)
    print(args)
    # trailingOnly=TRUE means that only your arguments are returned, check:
    # print(commandsArgs(trailingOnly=FALSE))
    
    start_date <- as.Date(args[1])
    name <- args[2]
    n <- as.integer(args[3])
    rm(args)
    
    # Some computations:
    x <- rnorm(n)
    png(paste(name,".png",sep=""))
    plot(start_date (1L:n), x)
    dev.off()
    
    summary(x)
    

Aynı dizinde iki dosyaları (exmpl.bat başlangıç. Sonuç var:

  • Bazı komplo ile example.png
  • Her ne exmpl.batch yapıldı

Eklemek için sadece ortam değişkeni %R_Script% ekleyebilirsiniz:

"C:\Program Files\R-3.0.2\bin\RScript.exe"

ve %R_Script% ....... toplu komut kullanmak

RScript Rterm arasındaki farklar:

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • calicoJake

    calicoJake

    29 EKİM 2007
  • Facebook Developers

    Facebook Dev

    24 ŞUBAT 2009
  • Kingsimba357

    Kingsimba357

    7 NİSAN 2008