R’ın gücü istatistiksel analizler gerçekleştirmek için aldatıcı biçimde basit gözüken çağrılarda yatıyor. Söz gelimi,
fm1 <lm(y ~ x, data=dummy, weight=1/w^2)
summary(fm1)
Diyor ki “sağlanan veri ve ağırlık vektörleri için y ve x değişkenli bir lineer model için en uygun katsayıyı, döşeli değerleri ve artıkları bul. Onları fm1 nesnesine kaydet ve ardından sonuçları özetle.” Daha önce aşağıdakini tanımlamıştık:
w <1 + sqrt(x) / 2
Bu kod anlaşılır bir biçimde okunuyor. Ancak onu yazmak biraz çalışma gerektiriyor. Ama zor değil ve düzinelerce kitabın yanı sıra sayısız ücretsiz yardım mevcut.
Web’deki R help’inin, R Console ve RStudio içinde Help menü içeriklerinin yanı sıra R komut satırından da yardım alabilirsiniz. Örneğin;
?functionName
help(functionName)
example(functionName)
args(functionName)
help.search(“your search term”)
??(“my search term”)
Veriyi R içine çekmek için data() fonksiyonuyla listelenen basit verileri kullanabileceğiniz gibi bir dosyadan da yükleyebilirsiniz:
mydata <read.csv(“filename.txt”)
R fazlasıyla genişletilebilir. Library() ve require fonksiyonları eklenti paketlerini yüklüyor; require() diğer fonksiyonların içinden kullanımı için tasarlandı. Çok sayıda eklenti paketi ve R dağıtımı CRAN’da (dünya çapındaki Kapsamlı R Arşiv Ağı) yaşıyor. Diğer iki yaygın R arşivi Omegant ve Bioconductor. Ekstra paketleri RForge içinde bulunuyor.
R kurulumu temel paketleri ve CRAN’dan önerilen paketleri yerel bir kütüphane dizini içerisine kopyalıyor; Mac’teki bu konum /Library/Frameworks/R.framework/Versions/3.1/Resources/library/. R library() komutunu herhangi bir argüman olmadan çalıştırmak yerel paketlerle kütüphane konumlarını listeleyecek. RStudio aynı zamanda, Packages sekmesindeki kurulum onay kutusunu işaretlediğinizde listelenmiş bir paketi kurmak için doğru library() komutunu da üretecek. Komut yardımı (package = packageName) fonksiyonları belirlenmiş paketler içinde görüntüleyecek.
Yalnızca CSV dosyalarından değil herhangi bir makul kaynaktan veri yüklemek için R paket ve fonksiyonları var. Read.table() fonksiyonu kullanılarak kontrol edilen virgül dışındaki ayırıcıların ötesinde veri tablolarını kopyala yapıştır yapabilir, Excel dosyalarını okuyabilir, Excel’i R’a bağlayabilir, SAS ve SPSS verilerini çağırabilir, ayrıca veritabanları, Salesforce ile RESTful arayüzlerine erişebilirsiniz.
RStudio Tools|Import Dataset menü nesnesi, veriye bir metin dosyası ya da URL’e bakarak ve gördüklerinizi temel alan açılır menülerdeki doğru dönüşüm seçeneklerini ayarlayarak doğru komutları üretmenize yardımcı olacağından standart veri aktarımları için sözdizimi öğrenmenize gerçekten gerek yok.
CRAN üzerinde var olan paketleri isimlerine göre listeleyebilirsiniz; bu liste masaüstünüze varsayılan olarak download edilmiş önerilen paketler listesinden çok daha kapsamlı. Varsayılan arşivlerden birinden paket yüklemek için install.packages fonksiyonunu kullanın:
install.packages(“ggplot2”)
Bu arada ggplot2’nin standart grafik paketine nazaran daha fazla seçeneğe sahip popüler bir gelişmiş grafik paketi olduğunu hatırlatalım. Hiç şüphesiz grafikler çok şey başarabilir. Şekil 2 ve 3 grafiklerine ek olarak 4 ve 5’i göz önünde bulundurun.
Grafikler ve istatistiki analiz anlamında R çok daha fazlasını yapabilir. Sharon Machlis’in derslerini okuyun ve ekstra bilgilere götüren bağlantılarını takip edin. Bu noktada konuyu R’da büyük verinin nasıl analiz edilebileceğine genişletmek istiyorum.
Buluttaki R
R programcıları “büyük veri” hakkında konuştuklarında onlar Hadoop üzerinden giden veriler demek istemiyor. Onlar “büyük” kelimesini bellek içinde analiz edilememiş verileri anlatmak için kullanıyor genellikle.
Esasında masaüstü ya da laptop’a kolaylıkla 16 GB RAM getirebiliyorsunuz. 16 GB RAM içinde çalışan R milyonlarca veri dizisini problemsizce analiz edebilir. Bir milyon satırlık bir veritabanının büyük olarak nitelendirildiği günlerden bu yana zaman epey değişti.
Programları daha fazla RAM’e gerek duyduğunda birçok geliştiricinin attığı ilk adımlardan biri onu daha büyük bir makinede çalıştırmaktı. R’ı bir sunucu üzerinde çalıştırabilirsiniz; yaygın bir 4U Intel sunucusu 2 TB’a kadar RAM’e sahip olabilir. Elbette 2 TB’lık bütün bir sunucuyu tek kişisel R oturumuna bağlamak biraz müsriflik olabilir. Bu yüzden insanlar büyük bulut oturumlarını ihtiyaç duyduklarında çalıştırıyor, sunucu donanımlarında VM’leri çalıştırıyor veya sunucu donanımları üzerinde RStudio Server benzerlerini çalıştırıyor.
RStudio Server ücretsiz ve Pro sürümleriyle geliyor. Bireysel analistler için her ikisi de aynı özelliklere sahip fakat Pro versiyonu ölçek tarafında daha çok şey sunuyor: yetkilendirme ve güvenlik, yönetim görünürlüğü, performans ayarları, destek ve ticari bir lisans. RStudio’dan Roger Oberg’e göre firmanın niyeti bireyler için ödemeyle gelen özellikler yaratmak değil.
RStudio Server Pro çeşitli büyük veri sistemleriyle entegre çalışıyor. Söz gelimi IBM Bluemix PaaS’i incelerken R ve RStudio’nun IBM’in DashDB servisinin bir parçası olduğunu fark ettim. (Şekil 6) Esasında RStudio’dan Oberg ve Tareef Kawaf’a göre bu Bluemix ve SoftLayer üzerine RStudio’nun bir kurulumu.