Python'da r-kare nasıl hesaplanır (örnekle)


R-kare , genellikle R2 olarak yazılır, doğrusal bir regresyon modelinde yordayıcı değişkenler tarafından açıklanabilen yanıt değişkenindeki varyansın oranıdır.

R karenin değeri 0 ila 1 arasında değişebilir; burada:

  • 0 , yanıt değişkeninin yordayıcı değişken tarafından hiçbir şekilde açıklanamayacağını gösterir.
  • 1, yanıt değişkeninin yordayıcı değişkenler tarafından hatasız olarak mükemmel bir şekilde açıklanabileceğini gösterir.

Aşağıdaki örnek Python’da bir regresyon modeli için R2’nin nasıl hesaplanacağını gösterir.

Örnek: Python’da R-kareyi hesaplama

Aşağıdaki pandalara sahip olduğumuzu varsayalım DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' hours ': [1, 2, 2, 4, 2, 1, 5, 4, 2, 4, 4, 3, 6],
                   ' prep_exams ': [1, 3, 3, 5, 2, 2, 1, 1, 0, 3, 4, 3, 2],
                   ' score ': [76, 78, 85, 88, 72, 69, 94, 94, 88, 92, 90, 75, 96]})

#view DataFrame
print (df)

    hours prep_exams score
0 1 1 76
1 2 3 78
2 2 3 85
3 4 5 88
4 2 2 72
5 1 2 69
6 5 1 94
7 4 1 94
8 2 0 88
9 4 3 92
10 4 4 90
11 3 3 75
12 6 2 96

Bir regresyon modeline uyum sağlamak için sklearn’in LinearRegression() fonksiyonunu ve modelin R-kare değerini hesaplamak için Score() fonksiyonunu kullanabiliriz:

 from sklearn.linear_model import LinearRegression

#initiate linear regression model
model = LinearRegression()

#define predictor and response variables
x, y = df[[" hours ", " prep_exams "]], df. score

#fit regression model
model. fit (x,y)

#calculate R-squared of regression model
r_squared = model. score (x,y)

#view R-squared value
print (r_squared)

0.7175541714105901

Modelin R karesi 0,7176 olarak çıkıyor.

Bu, sınav puanlarındaki farklılığın %71,76’sının çalışılan saat ve alınan deneme sınavı sayısı ile açıklanabileceği anlamına gelmektedir.

İsteseydik, bu R-kare değerini farklı bir dizi öngörücü değişkene sahip başka bir regresyon modeliyle karşılaştırabilirdik.

Genel olarak daha yüksek R-kare değerlerine sahip modeller tercih edilir çünkü bu, modeldeki yordayıcı değişkenler kümesinin yanıt değişkenindeki değişimi iyi açıklayabildiği anlamına gelir.

İlgili: İyi bir R-kare değeri nedir?

Ek kaynaklar

Aşağıdaki eğitimlerde Python’da diğer yaygın işlemlerin nasıl gerçekleştirileceği açıklanmaktadır:

Python’da basit doğrusal regresyon nasıl gerçekleştirilir
Python’da çoklu doğrusal regresyon nasıl gerçekleştirilir
Python’da regresyon modellerinin AIC’si nasıl hesaplanır

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir