SORU
5 Kasım 2010, Cuma


Nerede C kod yavaş R fonksiyonları hızlandırmak için yazmayı nasıl öğrenebilirim?

R ile kullanmak için C kodu yazmak için nasıl öğrenmek için en iyi kaynak nedir? R uzantıları system and foreign language interfaces bölüm hakkında biliyorum, ama bu oldukça zor olacak bulmak. İyi kaynaklar (çevrimiçi ve çevrimdışı) R ile kullanmak için C kodu yazmak için ne var?

Açıklamak istemiyorum öğrenmek C kodu yazmak istiyorum öğrenmek için nasıl daha iyi entegre R ve C İçin örnek, nasıl dönüştürebilirim bir C tamsayı vektörü için R tamsayı vektörü (veya tersi) ya da bir C skaler, bir vektör R?

CEVAP
5 Kasım 2010, Cuma


İyi iyi eski varKaynak, Luke kullanın!--- R (çok verimli) C kod bol kendisinin özel bir çalışma ve paketleri yüzlerce, yazarlar, bazı güven var, BOZUK olabilir. Bu çalışma ve uyum gerçek, test edilen örnekler sağlar.

Ama Josh şüpheli olarak, C ve dolayısıyla Rcpp karşı daha yalın. Ayrıca örnekler bol vardır.

Düzenleme:Yararlı bulduğum iki kitap vardı:

  • İlk Venables ve Ripley "S Programlamadiş (ve yıllardır 2. Baskı dair söylentiler vardı) uzun olsa bile". Zamanda sadece başka bir şey yoktu.
  • Mecliste ikinci" .' ^em>Veri Analizi için bir yazılım" çok daha yeni ve çok daha güzel R merkezli olan ve genişletilmesi iki bölüm R. C ve C De belirtilen olsun hissediyorum. Ayrıca, John digest tek başına kabul fiyat değer olduğunu çok yaptığım şey için beni parçalar.

Dedi ki, John büyüyor düşkün Rcpp (katkı) olarak bulur maç arasında R nesneleri ve C nesneleri () Rcpp) çok doğal ve ReferenceClasses yardım.

Edit 2:Hadley'in refocussed soru ile bençok güçlüC düşünün . C---çok sıkıcı ve ... yapmanız gereken çok klişe saçmalık var ^em>çok önlenebilir. Rcpp-introduction vignette bakabilirsiniz. Başka bir basit örnek 10% farklar (Radford Neal örnekleri) konusunda endişelenmek yerine getirebileceğimizi göstermek istediğim this blog posteightyfoldC ile artar (tabii yapmacık bir örnek üzerinde).

Edit 3:Hafif, koymak için, grok zor C hataları içine çalıştırabilirsiniz bu karmaşıklık vardır. Ama sadeceRcpp kullanınuzatmak yerine, nadiren gerekir. Ve bu süremaliyetinkar edilemez, uzak gölgesindeyarardaha basit bir kod, daha az klişe, hayır KORUMAK/KORUMASINI kaldırmak, bellek yönetimi vb pp. Doug Bates daha dün C ve C Rcpp yazmaktan R yazma gibi çok fazla bulduğunu belirtti . YMMV.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jared Busch

    Jared Busch

    25 Mayıs 2011
  • thenewboston

    thenewboston

    4 ŞUBAT 2008
  • Vicious Computers

    Vicious Comp

    14 EKİM 2006