Lineer regresyon algoritması
Lineer regresyonu gerçekten anlamak için algoritmanın nasıl çalıştığını bilmek faydalıdır. ols() için yazılan kod yüzlerce satırdır çünkü herhangi bir formül ve herhangi bir veri kümesiyle çalışması gerekir. Ancak, tek bir veri kümesi için basit lineer regresyon durumunda, bir lineer regresyon algoritmasını sadece birkaç satır kodla uygulayabilirsin.
İş akışı şöyle:
- İlk olarak, şu genel söz dizimini kullanarak kareler toplamını hesaplayan bir fonksiyon yaz:
def function_name(args):
# some calculations with the args
return outcome
- İkinci olarak, bu fonksiyonu en aza indiren katsayıları bulmak için
scipy'nin minimize fonksiyonunu kullan.
Açıklayıcı değerler (taiwan_real_estate veri kümesindeki n_convenience sütunu) x_actual olarak mevcut.
Tepki değerleri (taiwan_real_estate veri kümesindeki price_twd_msq sütunu) y_actual olarak mevcut.
minimize() de yüklü.
Bu egzersiz, kursun bir parçasıdır
Python ile statsmodels'da Orta Düzey Regresyon
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Complete the function
def calc_sum_of_squares(coeffs):
# Unpack coeffs
____, ____ = ____
# Calculate predicted y-values
y_pred = ____ + ____ * ____
# Calculate differences between y_pred and y_actual
y_diff = ____ - ____
# Calculate sum of squares
sum_sq = ____
# Return sum of squares
return sum_sq
# Test the function with intercept 10 and slope 1
print(calc_sum_of_squares([10, 1]))