Apache & R ile kullanma

8 Cevap php

Apache ve PHP ile R komut dosyalarını çalıştırmak için yine de var mı? Ben R. PHP değişkenleri geçmek mümkün olmak istiyorum

Herkes böyle bir şey yaptı?

Esasen, ben bir apache sunucu üzerinde R PHP değişkenleri geçirilmesi için bir yöntem olup olmadığını bilmek istiyorum.

8 Cevap

Şahsen biz bunu başarmak için R R CMD BATCH arayüzü kullanılmış. Çok zarif değil, ama aslında biz bir şey ile. R dosyası oluşturur PhP geçirilen bir forma bir kullanıcı yapıştırma veri var

x = c(1,2,3,4); dev.off(); plot(x);

Sonra PhP "R cmd toplu" bir exec yapmak olsun

Dizinde sonra müşteriye servis edilebilir Rplots.ps dosya almalısınız. Aynı şekilde daha sonra web sayfası PhP getirileri üzerinde görüntülenebilir grafiğin bir jpeg resmi döndürmek için jpeg () işlevini kullanabilirsiniz.

Tüm zarif, ama bizim için değil çalışır.

Bkz R-FAQ:

İki proje R. R_PHP_Online Steve Chen tarafından (bu proje hala etkin ise belirsizliğini olsa) için bir web arayüzü sağlamak için PHP kullanmak yukarıda Rcgi ve Rweb biraz benzer. R-php aktif Alfredo Pontillo ve Angelo Mineo tarafından geliştirilen ve R için bir web arayüzü ve R kod giriş no ihtiyaç önceden belirlenmiş analizlerin bir dizi hem de sağlar.

ve bu yazıda: Using R via PHP for Teaching Purposes: R-php

Başka bir yerde gelen cevaplar:

  1. RApache alakalı gibi görünüyor: http://biostat.mc.vanderbilt.edu/rapache/. Bu web Apache modülü şeklinde hizmet veren R bütünleştirir. Bu bir VMWare görüntü olarak kullanılabilir, bu yüzden sorunsuz test edebilirsiniz. Jeroen Ooms RApache dayalı bazı şaşırtıcı webapps geliştirdi: http://www.stat.ucla.edu/~jeroen/

  2. Apache ve R statconnWS veya rsoap gibi R web hizmeti çözümlerden birini kullanıyor olabilir PHP integrationg için başka bir çözüm. Bu daha sonra sadece web sunucusu ve R. hesaplama yükü çalıştıran bilgisayar çok büyük olmamalıdır ayırmak mümkün olma avantajına sahiptir.

Başka bir seçenek Rserve. Bu TCP yuvalarını destekleyen herhangi bir dilden R çağırabilirsiniz.

Evet, R in mediawiki oldukça güzel başarır ve bunu nasıl yaptığını görebiliyorum, böylece açık kaynak bulunuyor.

Ben, kaynağı ile yoğun kendimi oynadım gerçekten basit ve adapte etmek uzun almamalıdır.

Siz de sunucu üzerinde mediawiki kullanmayı düşünmüyorsanız olduğu gibi-elbette bunu kullanamazsınız. Ayrıca, güvenlik için dikkat.

http://code.google.com/p/rserve-php/: Rserve şimdi daha fazla bilgi bulabilirsiniz php desteği vardır

İşte size yardımcı olabilecek bir PHP kütüphanesi:

https://github.com/kachkaev/php-r

use Kachkaev\PHPR\RCore;
use Kachkaev\PHPR\Engine\CommandLineREngine;

$r = new RCore(new CommandLineREngine('/usr/bin/R'));
$result = $r->run('1 + 1');
echo $result;

Bu irade çıktı:

> 1 + 1
[1] 2

Kütüphanede ayrıca Symfony2 bundle olarak kullanılabilir.

Çok basit yolu

Sen argümanı kullanarak değişkenler iletebilirsiniz

her zaman exec ("Rscript yourRscript.R") bu argümanları geçmek

örneğin

exec ("Rscript yourRscript.R arg1 arg2 arg3")

sonra yourRscript argümanlarımdan

~ Onun yardımcı umut