R programlama dili olarak nasıl öğrenilir [kapalı]


105

R dilini istatistiksel bir sistem olarak öğrenmek yerine 'programlama' dili olarak nasıl öğreneceğimi bilmek istiyorum. Sorum, bir 'istatistik' ikna ile bir R kullanıcısı tarafından sıkça kullanılamayan ayrıştırma, değerlendirme vb. Gibi işlevlerin anlaşılmaması nedeniyle ortaya çıktı.

Düzenleme: Rpy RSPerl rJava gibi araçları araştırıyorum ve (en azından) R'nin diğer programlama dilleriyle iletişimini kolaylaştıran kavramları anlayabilmek istiyorum.

R için Web uygulamalarının kullanılabilirliği (R-PHP, RApache, vb.), R. hakkında daha derin ve daha yapısal bir anlayış kazanmam için başka bir motivasyon faktörüdür.

Son olarak, en az değil, böyle bir anlayışın gerekli değilse faydalı olacağı R paketleri yazabilmek istiyorum.


1
Neden R'yi istatistiksel bir sistem yerine bir programlama dili olarak kullanmayı düşündüğünüzü söylerseniz daha iyi yanıtlar alırsınız. R'de zaten geliştirilmiş olan başka bir yazılımı birbirine yapıştırıyor musunuz? R dışında hiçbir şey bilmeyen başka programcılarınız var mı, bu yüzden onu geliştirmek zorunda kalıyorsunuz?
Chip Uni

7
Kesinlikle "R ile İstatistiksel Yazılım Mühendisliği" gibi bir başlığa sahip, R'yi programlama dilleri açısından açıklayacak, R'de işlevsel programlama ve nesne yönelimli programlamanın ilkelerini tartışacak ve gerçekten en iyi uygulamalara odaklanacak bir kitaba ihtiyaç vardır. nispeten büyük sistemler geliştirmek için.
Harlan

Bence bu, bu dili öğrenmenin en eğlenceli yollarından biri: tryr.codeschool.com/levels/1/challenges/16
Umit Kaya

Yeniden açmak için verdiğim oy, bunun oldukça yüksek oy alan bir soru olduğu ve Google'da "stackoverflow r" araması yaptığınızda ilk isabetlerden biri olduğu gerçeğine dayanıyor. 10 yaşında ve sadece bazı öneriler hala geçerli. Dahası, daha modern malzeme sunma fırsatlarının olmaması da kapatıldı.
IRTFM

@ 42- bunu bir "öğretici arama" sorusu olarak görmez misiniz?
camille

Yanıtlar:


87

Başlangıç ​​olarak, John Cook'un yazdığı bu makaleye bakmak isteyebilirsiniz . Ayrıca "The R Inferno" yu okuduğunuzdan emin olun .

R ana sayfasında birçok iyi kaynak vardır , ancak özellikle "R'ye Giriş" ve "R Dili Tanımı" nı okuyun .

Çok yakından ilişkili bazı yığın akışı soruları:

Konuyla ilgili en sevdiğim kitap: S dilinin yaratıcısı John Chambers tarafından "Veri Analizi için Yazılım: R ile Programlama" .


Aynı bağlantıyla cevap verecektim. @harshsinghal Programlamada tam bir acemi olmadığınızı varsayarsak, bu bağlantı çok yararlıdır.
Secko

Ben de R cehennemine kefil olacağım. Ayrıntı ve dini inançlar olmadan Chambers kitabından çıkardıklarımın çoğunu içeriyor.
eytan

R cehennem belgesi muhteşem
Federico Giorgi


18

Michael Crawley'nin yazdığı The R Book gibi iyi ve kapsamlı bir başlangıç ​​önermeyi tercih ederim . İstatistiksel ipuçları ve birkaç alıştırma içeren, R temel işlevleri hakkında okunması kolay ve eksiksiz bir kitap. R kuvvetlerine çok odaklanır (örneğin doğrusal modeller) ve ayrıca faydalı kodlama püf noktaları verir. Şifreli çevrimiçi kurslarda mücadele ederken bana çok yardımcı oldu.

alternatif metin


2
Katılıyorum - bu mükemmel bir giriş kitabı; Crawley çok net yazıyor.
Richie Cotton

Çok detaylı. Yukarıdaki John Cook'un makalesi çok daha özlü. Bir programcı olarak, "The R kitabının" büyük bir kısmına ihtiyacınız yoktur.
Maksimum

14

Ben çok pratik bir öğreniciyim, bu yüzden bu tavsiye benim öğrenme tarzıma özel olabilir. Herhangi bir dilde "programlamayı öğrenmeye" başlamak için en iyi yerin, normal deneyim aralığınızın dışındaki problemleri bulmak ve ardından bunları bir programlama dili kullanarak çözmeye çalışmak olduğunu öneriyorum.

Programlama konusunda bana en çok şey öğreten projelerin Ristatistiklerle hiçbir ilgisi yoktu.

Gibi işlevleri bilmek parse()ve eval()hiçbir şekilde "İyi bir R, bir programcı" olmak için bir ölçüdür. Bu işlevlerin yoğun şekilde kullanılmasını gerektiren uygulamalar, uygulayabileceğiniz sorunlu alanın büyük bir bölümünü oluşturmaz R. Bunun yerine, bilen "iyi bir programcı" olmaya çalışmanız gerektiğini düşünüyorum R. Bu, problem çözme yaklaşımlarınızı iyileştirmeyi içerir.

Programlama seyirci sporu değildir - iyi bir kitap, mevcut araçlara referans olması için vazgeçilmezdir, ancak becerilerinizi geliştirmek için bazı problemler bulmanız gerekir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.