R Programlama Dili İle Neler Yapılabilir? BÖLÜM – 1

R veri bilimcileri, istatistikçiler ve analistler tarafından çok çeşitli görevleri gerçekleştirmek için kullanılan popüler bir programlama dilidir.

Araştırmalarımızda R programını istatistiksel çıkarım, hipotez testi, regresyon modelleri ve faktör analizlerine kadar, veri analizi ve makine öğrenimi alanlarındaki çeşitli sorunları çözmek için kullanılabilir. Açık erişimli ve sürekli geliştirilebilir olması, R’nin SPSS, Minitab vb. paket programlardan daha fazla tercih edilmesine sebep olmaktadır.

Bu yazımızda, yapısal eşitlik modellemesi, makine öğrenimi ve veri madenciliği uygulamaları dâhil olmak üzere R programlama ile yapılabilecek pek çok şeyden bazılarını keşfedeceğiz.

Şimdiki yazımız, R Programlama Dili ile Neler Yapılabilir? serisinin birinci bölümünü oluşturmaktadır.

R ile İstatistiksel Çıkarım

R kullanılarak gerçekleştirilen en yaygın görevlerden biri, istatistiksel çıkarımdır. Bu görev, örnek verilere dayalı olarak bir popülasyon (anakütle) hakkında tahminlerde bulunmak veya sonuçlar çıkarmak için istatistiksel yöntemlerin kullanılmasını içerir.

R ile parametrik (Tek Örneklem T Testi, Bağımsız Örneklem t-testi, ANOVA, Pearson korelasyon Analizi, Basit Doğrusal Regresyon vb.) ve parametrik olmayan (İşaret Testi, Mann-Whitney U Testi, Kruskal-Wallis Testi, Spearman Rho Katsayısı, Kernel Regresyonu vb.) birçok istatistiksel testi gerçekleştirebilirsiniz.

Güven aralıklarını hesaplamak, verilerinizi görselleştirmek için grafikler oluşturmak ve farklı değişkenler arasındaki ilişkileri belirlemek için regresyon analizleri yapmak söz konusu olduğunda R programını kullanabilirsiniz.

Örneğin, egzersiz ve kilo verme arasındaki ilişkiyi incelemek için bir çalışma yürüttüğünüzü varsayalım. Düzenli olarak egzersiz yapan ve yapmayan kişiler arasında kilo vermede anlamlı bir fark olup olmadığını belirlemek istiyorsunuz.

Bu durumda gerekli varsayımların kontrolü yaptıktan sonra ya bağımsız örneklemler t-testini ya da Mann-Whitney U testini yapmak için R’yi kullanabilirsiniz.

Ya da “Egzersiz seviyelerine, yaş ve diyet gibi diğer değişkenlere dayalı olarak kilo kaybını tahmin etmek için doğrusal bir regresyon modeli uygun mudur?” sorusuna cevap bulmak R programına başvurabilirsiniz.

Aşağıda birkaç satırlık kod üzerinden şahane bir veri görseli nasıl çizeceğimizi size gösteriyoruz.

Yazdığımız kodun ürettiği grafiği aşağıda görebilirsiniz.

R ile Hipotez Testleri

R ile yapılabilecek diğer bir uygulama, araştırma evreni hakkında belirli bir tahminin veya varsayımın test edilmesini sağlayan hipotez testidir.

Örneğin, Adana ili Ceyhan ilçesinde rastlantısal olarak seçilen 10 soğan yetiştiricisinin soğan fiyatları hakkında görüşleri sorulmuş ve cevapları 5 puanlı likert ölçeği ile ölçülmüştür. Çiftçiler tarafından verilen cevaplar aşağıdaki gibi kaydedilmiştir:

Gözlemler (x)
5
3
4
2
4
2
2
4
1
2

Daha önceki yıllarda yapılan benzer anketlerde ortanca (medyan) 3 olarak saptanmıştır. Yeni sezon fiyatları için çiftçi görüşlerinde önemli bir değişme olup olmadığını %5 önem düzeyinde test etmek isteyelim.

H0: Medyan=3 (Örneklem ortancası 3’e eşittir.)

Hı: Medyan≠3 (Örneklem ortancası 3’ten farklıdır.)

R ile, bu tür bir hipotezinizin veriler tarafından desteklenip desteklenmediğini belirlemek için İşaret Testini kullanabilirsiniz.

R’de işaret testi için BSDA paketindeki (Arnholt & Evans, 2017) SIGN.test fonksiyonu, DescTools paketindeki (Sinorell, 2018) SignTest fonksiyonu ve signmedian.test paketindeki signmedian.test fonksiyonları bulunmaktadır.

Hipotez testi, genel manada örnek verilere dayalı bir popülasyon hakkında çıkarımlar yapmak için önemli bir araçtır. Gözlenen bir farkın şans eseri mi yoksa istatistiksel olarak anlamlı mı olduğunu belirlemenizi sağlar.

Özetle R programını sayesinde ortalama, korelasyon katsayısı vb. hakkında çok çeşitli hipotezleri test etmek ve verileriniz hakkında anlamlı sonuçlar çıkarmak için kolayca hipotez testleri yapabilirsiniz.

R ile Regresyon Modelleri

Regresyon analizi, değişkenler arasındaki ilişkileri anlamak ve gelecekteki sonuçlar hakkında tahminler yapmak için kullanılan güçlü bir istatistiksel araçtır.

R ile aşağıda gösterilen regresyon modellerini kurabilirsiniz:

  • Lineer regresyon analizi
  • Lojistik regresyon analizi
  • Poisson regresson analizi
  • Ridge regresyon analizi
  • Temel bileşenler regresyon analizi
  • Lasso regresyon modelleri

Elbette yukarıdaki regresyon modellerinden çok daha fazlası, R’nin paketlerinde uygulayıcılarını bekliyor!

R’yi çoklu bağlantı problemi, varyans homojenliği vb. gibi regresyon varsayımlarını kontrol etmek ve grafikler oluşturarak regresyon sonuçlarınızı görselleştirmek için de kullanabilirsiniz.

Örneğin; metrekare, yatak odası sayısı ve konum gibi bağımsız değişkenlere dayalı olarak konut fiyatlarını tahmin etmek için doğrusal bir regresyon modeli kurmak için R’yi kullanabilirsiniz.

Ya da bir müşterinin hesap geçmişine ve farklı değişkenlere dayalı olarak müşteri kaybetme olasılığını tahmin etmek adına bir lojistik regresyon modeli oluşturmak için R’nin fonksiyonlarından yararlanabilirsiniz.

Günlük kullanımlarda çok sık karşılaşamayacağınız bazı parametrik olmayan regresyon yöntemlerine ilişkin R paket bilgilerini şu şekilde verebiliriz:

Kendall-Theil-Sen Regresyonu: Bu yöntem bazı kaynaklarda Theil-Sen yöntemi olarak adlandırılır. Bunu yanında Siegel tarafından değiştirilmiş ve geliştirilmiş bir uyarlaması da önerilmiştir. R’nin mblm paketindeki (Komsta, 2019) mblm fonksiyonu varsayılan yöntem olarak Siegel işlemini kullanır. Ancak fonksiyon repeated=FALSE argümanı ile çağrıldığında Theil-Sen işlemiyle de çalışılabilir.

Kantil Regresyonu: R’de kantil regresyonu içinquantreg paketindeki (Koenker, 2018) rq fonksiyonu ve Qtools paketindeki (Geraci, 2016) çeşitli fonksiyonlar kullanılabilir. Qtools paketi ayrıca sadece sürekli değişkenler için değil aynı zamanda diğer ölçeklerdeki değişkenler için fonksiyonlar da içermektedir.   

Lokal Regresyon: R’nin temel stats paketindeki loess fonksiyonu bir sürekli bağımlı değişken ve 4’e kadar bağımsız değişkenden oluşan modeller için kullanılabilir. Parametrik olmayan bir yöntem olarak bağımlı değişkendeki aykırı değerlere karşı dayanıklıdır. Lokal regresyon modelleri için genelde p-değeri veya R2 değeri hesaplanmaz.

Kernel Regresyonu: R’nin temel stats paketindeki ksmooth fonksiyonu kullanılarak kernel regresyon modeli tanımlanmaktadır. Hali hazırda ksmooth fonksiyonunda çekirdek genelde normal olarak tanımlanır.

Genelleştirilmiş Toplamsal Modeller: R’de GAM (Generalized Additive Models) ile regresyon analizi için çeşitli seçenekler olmakla birlikte mgcv paketindeki gam fonksiyonu geleneksel parametrik bileşene ilaveten düzleştirici fonksiyonlara da sahip olduğundan tercih edilenler arasında bulunmaktadır. Model başarısını değerlendirmek için R2 ve GCV istatistiklerini kullanmak mümkündür.

Sonsöz

Bu yazımızda R programlama dili ile yapılabilecek uygulamaları 1. bölüm şeklinde paylaştık.

Gelecek bölümde yapısal eşitlik modellemesi ile veri madenciliği, çok değişkenli analiz teknikleri, makine öğrenimi gibi farklı yöntemlerin R ile nasıl yapılabildiğine göz atacağız.