R-Project ve Uygulamalı İstatistik

0
vst
R-Project istatistiksel hesaplama ve grafik işleme için geliştirilmiş bir dil ve programdır. AT&T Laboratuarlarında geliştirilen ve şu anda Lucent Technologies'e ait olan S-Plus'a benzer bu özgür yazılım, dünyanın önde gelen üniversiteleri, araştırma enstitüleri ve kurumları tarafından yoğun olarak kullanılmaktadır. Kullanım alanı ise finanstan sosyolojiye, psikolojiden meteorolojiye, tıptan ekonometriye uygulamalı istatistik biliminin kullanıldığı hemen heryerdir.
Hayata, evrene ve herşeye dair görgümüz ve bilgimiz arttıkça, yeni keşifler ve dolayısıyla yeni modeller ve türlü türlü veri yığınları ile karşılaşıyoruz. Gördüklerimizi ve bildiklerimizi anlamlandırmak ve ilişkilendirmek içinse istatistik biliminden faydalanıyoruz. Bu kadar veri ile, hem değişken sayısının fazla olması hem de veri serilerinin uzun olmasının getirdiği zorluklar, hem de çağdaş modellerin karmaşıklığı ile baş edebilmek için güçlü istatistiksel araçların kullanımı zorunlu hale geliyor. Bu amaçla kullanılan birçok araç bulunmaktadır. SPSS, Excel, S-Plus, SAS, Matlab, Eviews, Stata gibi onlarca aracın içerisinde R-Project, Scilab, Lisp-stat gibi özgür alternatifler de mevcut. Bunların içerisinde R-Project'in özellikle istatistiksel hesaplama amacıyla tasarlanmış olması, güçlü programlama dili, ve özellikle Unix türevi işletim sistemlerinde meta-programlamaya müsait altyapısı sayesinde akademisyenlerin ve araştırmacıların ilgisini çekmiştir. CRAN adı verilen arşiv ağında (Comprehensive R Archive Network) yüzlerce paket bulunmaktadır. Bunlar, MySQL veritabanı bağlantısından Avusturalya kıtasının haritasına kadar oldukça ilginç paketleri de kapsıyor. Ayrıca ülkemizde de bazı üniversitelerde ders materyali olarak kullanıldığını biliyoruz. Örneğin Bilgi Üniversitesi bir yansı açarak projeye destek vermeye başladı bile.

R-Project GNU-Linux, Macintosh ve Microsoft Windows sistemlerinde çalışmaktadır. Debian sistemlerinde "apt-get install r-base" komutuyla sisteminize yüklediğiniz R-Project'in yorumlayıcısını (Python ve GNUPlot'da olduğu gibi) komut satırında aşağıdaki gibi çalıştırabilirsiniz:

[vst@vsthost:~]$ R

R : Copyright 2005, The R Foundation for Statistical Computing

Version 2.1.0 (2005-04-18), ISBN 3-900051-07-0

R is free software and comes with ABSOLUTELY NO WARRANTY.

You are welcome to redistribute it under certain conditions.

Type 'license()' or 'licence()' for distribution details.

Natural language support but running in an English locale

R is a collaborative project with many contributors.

Type 'contributors()' for more information and

'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or

'help.start()' for a HTML browser interface to help.

Type 'q()' to quit R.

>



R çalıştıktan sonra ">" işaretine kadar programa dair bilgileri ekrana getirir. ">" istemcisinden sonra istediğiniz türlü türlü işlemi yapabilirsiniz: ("#" karakterini takip eden ifadeler yorumlardır. Yorumlayıcı tarafından dikkate alınmaz)

> 42 # 42'nin değeri kaç?

[1] 42

> ornek.vector = c(1,3,5,7,2,4,6,8) # örnek bir vektör

> ornek.vector # içerisini görelim

[1] 1 3 5 7 2 4 6 8

> mean(ornek.vector) # ornek.vector'ün aritmetik ortalaması kaç?

[1] 4.5

> normal.dagilim = rnorm(250) # 250 elemanlı bir normal dağılım

> mean(normal.dagilim) # aritmetik ortalaması 0'a yakın olmalı

[1] -0.00670608

> var(normal.dagilim) # varyansı 1'e yakın olmalı

[1] 1.060574

> plot(sin,-pi,pi) # sinüs fonksiyonunun [-pi,pi] aralığındaki grafiği



Elbetteki yüzlerce hazır fonksiyonu ve gerçek bir dil olan R programlama dilini burada detaylı olarak tanıtmamız mümkün değil. Ancak iştahınızı kabartmak amaçlı neler yapılabileceğinize dair kısa örnekler:

İnternette duran MySQL veritabanınıza bağlanıp sitenizin kullanıcı verilerini alan, bunları yorumlayan, PNG grafikler üretip, sonra da bir dosyaya istediğiniz formatta hazırladığınız LaTeX çıktısını yazan, hemen ardından sisteminizdeki "pdflatex" komutuyla pdf dosya hazırlayan bir R programı yazmanız mümkün. Hatta, bunu bir CGI programı olarak tasarlamanız da mümkün. Ya da, bir seri JPG dosya hazırlayıp, yine sisteminizdeki "jpegtoavi" programını ya da "mplayer" programının "mencoder" adı verilen encoderını kullanarak bir avi ya da divx olarak hazırlayan bir R programı yazmanız da mümkün. Daha gelişmiş kullanımlar ve özel amaçlar için tasarlamış olduğunuz programlama kütüphanelerini R-Project'e paket olarak yükleyip, bunları kullanabilirsiniz. Bu bağlamda ne kadar işinize yarar bilmem ama, R'ı bir email client olarak bile kullanabilirsiniz.

Ülkemizdeki R-Project aktivitesine dair bilginiz, eklemek istedikleriniz ya da sormak istedikleriniz varsa tam sırası...

Görüşler

0
FZ
Lisp burada da karşımıza çıktı:

"The design of R has been heavily influenced by two existing languages: Becker, Chambers & Wilks' S (see What is S?) and Sussman's Scheme. Whereas the resulting language is very similar in appearance to S, the underlying implementation and semantics are derived from Scheme."

http://cran.r-project.org/doc/FAQ/R-FAQ.html
0
pismikrop
R, görüntü işleme ve wavelet konusunda uzun bir süredir kullandığımız bir yazılım. Matlab'a karşı herkese bunu önermeme rağmen yine de Türkiye'de pek kullanan olmamasının üzüntüsü içindeyim.
0
FZ
Bu dediklerinizi bir üniversitede mi yapıyorsunuz? Eğer öyle ise hangi üniversite olduğunu sorabilir miyim? (Tabii bir şirket ise ve sakıncası yoksa bunu da öğrenmek isterim).

Ayrıca, neden görüntü işleme ve wavelet analizi için Matlab yerine R-Project'i tercih ettiğinizi de biraz açabilir misiniz? Hazır R paketlerinden mi faydalanıyorsunuz yoksa kendiniz bazı şeyler mi geliştirmek durumunda kaldınız, vs. vs.?
0
pismikrop
wavelet ile şifreleme yapmıştık, abstract'ı gönderebilirim. İTÜ ve Sakarya üniversitesi ortak yapmıştık. Tercih etmemizin tek sebebi ise özgür yazılım olması idi.
0
bm
Mumkunse sadece abstracti degil yazinin kendisini de webde bir yere koysak?
0
FZ
BM'ye katılıyorum, makalenize Internet üzerinden erişebilir miyiz?

R'yi tercih etmenizin tek sebebi gerçekten de özgür yazılım olması mıydı? Yani diğer benzeri yazılımlarla teknik açıdan hiç kıyaslamadınız mı?
0
vst
İsterük, isterük...

Uzun zamandır, R paket listesine bakarak eğleniyorum. Gözüme çarpan paketlerden birisi de rimage idi. Bu ve bunun gibi görüntü işleme paketlerinin nasıl kullanıldığına dair bilgi almayı çok isteriz...
0
pismikrop
Evet ben cryptology kısmı ile ilgileniyordum abim ise wavelet kısmı ile, İTU Elektronik fakültesi dekanı Serhat ŞEKER bey'de wavelet kısmı ile ilgilendir. Bu konuda inşallah bir makale yazıp burada sevgili arkadaşlara sunarız. Yakında ufak bir imge işleme uygulaması yazabilirim sanırım.
0
FZ
En kısa sürede bekliyoruz makalenizi.
0
damla88
Merhaba
R Proje yi yeni ogreniyorum. Ilk adimda bir problemle karsilastim. Excel dosyasini programa adapte etmem gerekiyor. csvye cevirip etmeye calistim ama basarili olamadim. Yardimci olabilirseniz cok sevinirim.
0
FZ
Ben de benzer problemle karşılaşmıştım, lütfen Türkçe Windows kullanıp kullanmadığınızı kontrol edin, eğer Türkçe ise ve EXCEL'den CSV'ye aktardığınızda CSV dosyasının içine ayraç (separator) olarak ',' yerine ';' yani virgül yerine noktalıvirgül kullanıldı ise R 'default' olarak ',' bekliyor olmaktan ötürü problem çıkarıyor olabilir. Ya R'nin ilgili csv fonksiyonlarına bakıp ;'ı ayraç kabul ettirebilir yahut EXCEL'e ';'li değil ','li CSV ürettirmeyi deneyebilir yahut... size kalmış yani, yöntemlerden birini seçebilirsiniz.
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Palm için miniGL sürücüsü

redogre

http://www.dsbox.com/minigl.html adresinde Palm için OpenGL projesi ile ilgili bilgiler var. Digital Sandbox firmasının Source Forge sitesinin de desteğiyle yürüttüğü projede şu anda 0.4 versiyonuna gelinmiş durumda. Ama Sandbox kullanıcıları uyarıyor, program henüz çok stabil değil. Dsbox sitesinde çok "şirin" screen shot lar var... En azından Palm ekranında vektör grafikler şirin gözüküyor bence.

Ruby Nesnelerine Kalıcılığı Öğretmek

anonim

Dünyada en çok sevilen programlama dili olduğu söylenen Ruby ile sunucu taraflı uygulama geliştirmek için elimizde RoR gibi kullanması çok kolay ve işlevsel bir arayüz var.

Peki ya masaüstü uygulamalarımız için Hibernate benzeri kalıcık araçları karşısında Ruby'de alternatif yok mu?

Tabii ki var. Og (Object Graph) ile Ruby nesnelerine nasıl kalıcı olacaklarını öğretmek çok kolay olsa da, bu makale ile daha kolay olacak.

Yapay Zeka Üstadı Sizlere Ömür

FZ

Klasik bir YZ programı olan "Parry"nin yaratıcısı Dr. Kenneth Mark Colby 81 yaşında hayata gözlerini yumdu.

Yale Üniversitesi'de tıp eğitimini tamamlayan, Amerikan Ulusal Zihin Sağlığı Enstitüsü'nde araştırmacı olarak çalışan ve Stanford Üniversitesi'nde de bilgisayar bilimleri profesörü olarak çalışan Colby, "Parry"yi, 1971 yılında Joseph Weizenbaum'un öncü diyalog programı "Eliza"dan yola çıkarak hazırlamıştı. Eliza sisteminden farklı olarak Colby'nin yazılımı kendi konularını önerebiliyor ve diyalog esnasında karmaşık kişilik kalıplar sergileyebiliyordu.

Renklendirme Algoritması

kris

Eski siyah beyaz filmleri nasil renklendirdikleri aklım almıyordu. Kimyasal ya da bilgisayarlı bir yöntem olsun 1,5 saatlik film olsa 25x60x90 = 135000 kare eder. Her kare ile yarım saat uğraşılsa en az 67500 saat eder. Keşke o zamanlar böyle bir uygulama olsaydı... Bu israilliler deli:

Colorization using optimization.

Teknoloji Sivrisineğe karşı!

conan

Tayland'lı bir yazılımcı kardeşimiz sivrisinekleri bilgisayarımızdan 2 metre uzaklıkta tutan bir program yazmış. Yüksek frekansta ses üreten bu program'ın bir çok OS için sürümü mevcut. Yazın bilgisayar başında kaşınmaktan deliriyorsanız bir de bu programı deneyin ;)