R Uygulamaları – Bölüm 1: Basit Doğrusal Regresyon

R uygulamalar serisinden herkese merhaba!

Veri bilimi konusunda çalışmalar yapmak isteyenler için R programlama dili kullanılarak çeşitli analizlerin yapılacağı uygulamalar serisinin birinci bölümü basit doğrusal regresyon analizi ile başlıyor. Keyifli okumalar 🙂

Regresyon analizi, iki veya daha fazla değişken arasındaki ilişkiyi inceleyen analiz yöntemlerinden biridir. Bu değişkenlerden biri bağımlı değişken, diğerleri ise bağımsız değişkenler olarak isimlendirilir. Burada ki amaç bağımsız değişkenler kullanılarak bağımlı değişkeni tahmin etmektir. Bağımlı değişken tek bağımsız değişkenle açıklanmak istenirse bu, basit doğrusal regresyon olarak isimlendirilir. Örneğin; evin büyüklüğü ile fiyatı arasındaki ilişkiyi inceleyelim. Bu değişkenlere ait veri seti aşağıda gösterilmektedir:

Evin Fiyatı (1000 TL) Evin Büyüklüğü (metrekare)
245 130
312 148
279 157
308 174
199 102
219 143
405 218
324 227
319 132
255 157

Bağımsız değişken: Evin büyüklüğü (metrekare cinsinden)

Bağımlı değişken: Evin fiyatı (1000 TL üzerinden)

Şimdi bu değişkenlere ait verileri R programlama dilini kullanarak sisteme tanıtalım. Kodlar aşağıda gösterilmektedir:

Değişkenler arasındaki ilişki hakkında genel anlamıyla bilgi edinebilmek için ilk olarak bu değişkenlere ait grafik oluşturulmalıdır. Grafik aşağıda gösterilmektedir:

Değişkenler Arasındaki İlişki
Değişkenler Arasındaki İlişki

Grafiğe bakıldığında evin büyüklüğü ile ev fiyatı arasında doğrusala yakın bir ilişki olduğunu söyleyebiliriz. Bu değişkenler arasındaki ilişkiyi basit doğrusal regresyon analizi ile modelleyelim. İlk olarak model hakkında bilgi verelim. Aslında istatistikte değişkenler arasındaki ilişkiyi modellemek için farklı yöntemler kullanılmaktadır. Bunlardan birisi basit doğrusal regresyon modelidir. Bu modele ait fonksiyon aşağıda gösterilmektedir:

Y_i=\beta_0+\beta_1X_i+\epsilon_i

Şimdi bu modele ait notasyonları tanımlayalım:

Y_i: Bağımlı değişkenin değeri

\beta_0: Regresyon doğrusunun kesişim katsayısı

\beta_1: Regresyon doğrusunun eğim katsayısı

X_i: Bağımsız değişkenin değeri

\epsilon_i: Rassal hata terimi

Regresyon Modeli
Regresyon Modeli

Şuna da değinmeden geçmeyelim. Doğrusal regresyon modeli değişkenler arasındaki ilişki doğrusal olmadığı durumlarda da kullanılabilir. Burada doğrusallık olarak kastedilen şey parametrelerce (beta parametreleri) doğrusal olmasıdır. Aşağıda doğrusal regresyon modelleri için örnekler gösterilmektedir:

  • Y_i=\beta_0+\beta_1X_i+\epsilon_i
  • Y_i=\beta_0+\beta_1X_i^2+\epsilon_i
  • Y_i=\beta_0+\beta_1\sqrt{X_i}+\epsilon_i

Peki burada ikinci ve üçüncü fonksiyonlar hangi durumlarda kullanılır. Az önce de söylediğimiz gibi değişkenler arasındaki ilişki doğrusal olmadığında doğrusal regresyon modeli uygulanabilir. Ancak değişkenlere dönüşüm uygulanması gerekir. Örneğin; değişkenler arasında karesel bir ilişki varsa bağımsız değişkendeki verilerin kareleri alınarak analize devam edilir. Bu durumda doğrusal regresyon modeli ikinci fonksiyon olmaktadır.

Şimdi kendi verimize geri dönelim ve doğrusal regresyon modeli oluşturalım. Bunun için R’da lm() komutu kullanılmaktadır:

Modeli oluşturduktan sonra özet sonuç değerlerine bakabiliriz. Bu işlemi yapmak için R’da summary() fonksiyonu kullanılmaktadır:

Modelin Özet Çıktıları
Modelin Özet Çıktıları

Bu çıktıya bakarak model hakkında çok fazla bilgi edinebiliriz. İlk olarak “residuals” bölümü bize artıklar hakkında bilgi vermektedir. Burada artık olarak belirtilen hata değerleridir. Yani veri setindeki ev fiyat değerleri ile tahminlenen ev fiyat değerleri arasındaki farktır. Artıklara ait en küçük, en büyük ve ortanca değerlerini burada görebiliriz. Parametreler hakkındaki bilgilere “coefficients” bölümünden ulaşabiliriz. Buradaki ilk sütun parametrelerin tahminlenen değerlerini göstermektedir. İkinci sütun ise parametrelere ait standart hata değerleridir. Üç ve dördüncü sütunda sırasıyla t ve p değerleri gösterilmektedir. Bu değerler parametrelerin sıfıra eşit olup olmadığı hipotezini test etmek için kullanılır. Çıktının son bölümünde artıkların standart hatası ve serbestlik derecesi gösterilmektedir. Burada gösterilen “çoklu R-kare” değeri belirtme katsayısı olarak isimlendirilir. Bu değer, bağımlı değişkendeki toplam değişimin, bağımsız değişkendeki değişimle açıklanan kısmıdır. Burada ev fiyatındaki toplam değişimin %58’i evin büyüklüğündeki değişim tarafından açıklanmaktadır. “Düzeltilmiş R-kare” değeri hakkında genellikle birden fazla bağımsız değişkenli modellerde yorum yapılır. Modele kullanışsız bir değişken eklendiğinde bu değer azalmaktadır. Son olarak “F-statistic” ve “p-value” değerleri eğim parametresinin sıfıra eşit olup olmadığı hipotezini test etmek için kullanılmaktadır.

Peki ev fiyatları için tahminlenen değerler nasıl bulunmaktadır? Hatırlarsanız bir regresyon modelinden bahsetmiştik. Bu regresyon modelinde parametre değerleri de yazılarak gerçek ev fiyat değerlerine ulaşabiliyorduk. Bu modelden artıklara ait notasyonu çıkarttığımızda tahmini ev fiyat değerlerini elde edebiliriz. Yani fonksiyon bu şekilde yazılabilir:

\hat{Y_i}=\beta_0+\beta_1X_i

Buradan özet sonuç değerlerinin listelendiği çıktıya bakarak parametre değerlerini yazabiliriz.

\hat{Y_i}=98.1145+1.1863*X_i

Bu fonksiyonda ev büyüklüğü değişkenine ait veriler yerine yazıldığında tahminlenen ev fiyat değerlerine ulaşabiliriz. 10 gözlem için 10 adet tahmini değer elde edilmektedir. Bunun için R çıktısı aşağıda gösterilmektedir:

Bu değerlere artıkları da eklediğimizde gerçek ev fiyat değerlerine ulaşmaktayız. Artıklar için R çıktısı aşağıda gösterilmektedir:

Şimdi grafik üzerinde regresyon doğrusunu çizdirelim. R’da abline() komutu kullanılarak regresyon doğrusunu elde edebiliriz:

Regresyon Doğrusu
Regresyon Doğrusu

Bu aşamaya kadar doğrusal regresyon analizinin nasıl yapılacağını gördük. Ancak bu analiz için önemli bir ayrıntı daha bulunmaktadır: Varsayım kontrolü. Doğrusal regresyondaki varsayımların sağlanması gerçeğe yakın değerler elde edebilmek için gereklidir. Şimdi bu varsayımları maddeler halinde açıklayalım:

  • Değişkenler arasındaki ilişki parametrelerce doğrusaldır.
  • Gözlemler birbirinden bağımsız olmalıdır.
  • Artıklar normal dağılmalıdır.
  • Artıklar arasında varyans homojenliği sağlanmalıdır.

Bu varsayımları kontrol etmek için R’da artık analizi yapmak gerekmektedir. Bunun için R çıktısı ve kodlar aşağıda gösterilmektedir:

Artık Analizi
Artık Analizi

Sol üst grafikte gözlemlerin sıfır etrafında dağılım göstermesi gerekmektedir. Bu grafiğe bakıldığında sıfır etrafında düzenli bir dağılımı olduğunu söyleyebiliriz. Sağ üst grafikte normallik için artıklara ait Q-Q grafiği gösterilmektedir. Bu grafikte çizgi üzerinde verilerin düzdün dağıldığını görüyoruz. Artıkların normal dağılım varsayımını sağladığını söyleyebiliriz. Sol alt grafik varyans homojenliğini test etmek için kullanılır. Artıkların regresyon doğrusu boyunca eşit varyansa sahip olduğunu test edebiliriz. Son olarak sağ alt grafik, veri setindeki etkin gözlemleri belirlemek için kullanılır. Modelimizi iyileştirebilmek için veri setinden çıkarılması gereken gözlemler bu grafik sayesinde görülebilir. Ancak bizim veri setimizdeki gözlem sayısı az olduğu için şimdilik gözlem çıkartmaya gereksinim duyulmamaktadır. Ancak biz bu varsayım kontrolünü grafiklere bakarak çok net bir şekilde yorumlayamayabiliriz. Özellikle daha karmaşık veri setlerinde grafiklerden yorum yapmak oldukça zordur. Bu nedenle bazı istatistiksel testlere ihtiyaç duyulmaktadır. Normallik için “Shapiro – Wilk”, varyans homojenliği için “stundentized Breusch – Pagan” testi kullanılabilir. “stundentized Breusch – Pagan”  testini R’da uygulayabilmek için “lmtest” kütüphanesi yüklenmelidir. R fonksiyonları ve çıktılar aşağıda gösterilmektedir:

Testler
Testler

İlk olarak normallik ve varyans homojenliği için hipotezler kurulur ve yorum yapılır.

H0: Artıklar normal dağılmaktadır.

H1: Artıklar normal dağılmamaktadır.

Shapiro – Wilk normallik testine göre p değeri 0.05’in üzerindedir. Yani H0 hipotezi reddedilemez. Artıklar normal dağılmaktadır, diyebiliriz.

H0: Artıklar arasında varyans homojenliği vardır.

H1: Artıklar arasında varyans homojenliği yoktur.

Stundentized Breusch – Pagan testine göre p değeri 0.05’in üzerindedir. Yani  H0 hipotezi reddedilemez. Artıklar arasında varyans homojenliği vardır, yorumu yapılabilir.

Yapılan analize göre regresyon modelimizin varsayımlarının sağlandığını görmekteyiz. Oluşturulan bu modelin doğrusal regresyon analizi için uygun olduğunu söyleyebiliriz.

Varsayımların sağlanmadığı durumlarda ise değişkenlere bazı dönüşümler uygulayarak varsayımları sağlatmaya çalışabiliriz.

Bu aşamaya kadar basit doğrusal regresyon analizinin R programlama dili kullanılarak nasıl uygulanacağını ve çıktıların nasıl yorumlanması gerektiğini öğrendik. Ancak, değişkenler arasındaki ilişkiye baktığımızda bağımlı değişkeni etkileyen birden fazla bağımsız değişken olabilir. Bu durumda yapılacak analiz yöntemlerinden birisi çoklu doğrusal regresyon analizidir. R uygulamalar serisinin ikinci bölümünde çoklu doğrusal regresyon analizine değineceğim.

Sağlıklı günler dilerim 🙂

Burak Dilber

Diğer yazılarıma ulaşmak için tıklayınız.

0
0

Patreon

üzerinden bize destek olabilirsiniz!

.

Birlikten kuvvet doğar! Sizde #patreon üzerinden bizim yanımızda olabilirsiniz. Yaptığımız gönüllü çalışmaları arttırmak için bize destek olun.

Ücretli ve Ücretsiz Eğitimler

Türkiye'nin en büyük veri bilimi topluluğu ile kariyerinizi inşa edin.

Data Science Earth

Data Science Earth ekibi, üst düzey Veri Bilim çözümleri üretmek amacı ile toplanmış akademisyenler ve uzmanlardan oluşmaktadır. Öncelikli olarak veri bilincini geliştirmeyi ve küreselleşen rekabet ortamında verinin gücünün doğru kullanılmasını sağlamayı amaçlamaktadır.

Sponsor

QuestionPro 35 farklı soru seçim özelliği ile anket çalışmalarımıza güç katmaktadır.