Python'da düzeltilmiş r-kare nasıl hesaplanır
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 kare değeri 0 ila 1 arasında değişebilir. 0 değeri, yanıt değişkeninin yordayıcı değişken tarafından hiçbir şekilde açıklanamayacağını, 1 değeri ise yanıt değişkeninin yordayıcı değişken tarafından açıklanabildiğini gösterir. tahminci tarafından hatasız olarak mükemmel bir şekilde açıklanmıştır. değişkenler.
Düzeltilmiş R-kare, bir regresyon modelindeki öngörücülerin sayısını ayarlayan, R-karenin değiştirilmiş bir versiyonudur. Aşağıdaki şekilde hesaplanır:
Düzeltilmiş R 2 = 1 – [(1-R 2 )*(n-1)/(nk-1)]
Altın:
- R 2 : Modelin R 2’si
- n : Gözlem sayısı
- k : Tahmin değişkenlerinin sayısı
Bir modele öngörücüler ekledikçe R2 her zaman arttığından, düzeltilmiş R2, bir modeldeki öngörücülerin sayısına göre ayarlanarak size bir modelin ne kadar yararlı olduğunu söyleyen bir ölçüm görevi görebilir.
Bu eğitimde Python’da bir regresyon modeli için düzeltilmiş R2’nin hesaplanmasına ilişkin iki örnek gösterilmektedir.
İlgili: İyi bir R-kare değeri nedir?
Örnek 1: sklearn ile düzeltilmiş R-kareyi hesaplama
Aşağıdaki kod, çoklu doğrusal regresyon modelinin nasıl sığdırılacağını ve sklearn kullanarak modelin uygun R-karesinin nasıl hesaplanacağını gösterir:
from sklearn. linear_model import LinearRegression import pandas as pd #define URL where dataset is located url = "https://raw.githubusercontent.com/Statorials/Python-Guides/main/mtcars.csv" #read in data data = pd. read_csv (url) #fit regression model model = LinearRegression () x, y = data[["mpg", "wt", "drat", "qsec"]], data.hp model. fit (x,y) #display adjusted R-squared 1 - (1-model. score (X, y))*( len (y)-1)/( len (y)-X. shape [1]-1) 0.7787005290062521
Modelin düzeltilmiş R-kare değeri 0,7787 olarak çıkıyor.
Örnek 2: Düzeltilmiş R-kareyi istatistiksel modellerle hesaplama
Aşağıdaki kod, çoklu doğrusal regresyon modelinin nasıl sığdırılacağını ve istatistik modellerini kullanarak modelin uygun R-karesinin nasıl hesaplanacağını gösterir:
import statsmodels. api as sm import pandas as pd #define URL where dataset is located url = "https://raw.githubusercontent.com/Statorials/Python-Guides/main/mtcars.csv" #read in data data = pd. read_csv (url) #fit regression model x, y = data[["mpg", "wt", "drat", "qsec"]], data.hp X = sm. add_constant (X) model = sm. OLS (y,x). fit () #display adjusted R-squared print ( model.rsquared_adj ) 0.7787005290062521
Modelin düzeltilmiş R-kare değeri 0,7787 olarak ortaya çıkıyor ve bu da önceki örneğin sonucuyla eşleşiyor.
Ek kaynaklar
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