Regresja liniowa z wykorzystaniem biblioteki SKLEARN
Na podstawie przykładowych danych o cenach m2 mieszkania, zaczerpniętych z ofert, model regresji liniowej jest w stanie ozacować cenę dowolnej powierzchni.
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
powierzchnia=np.array([61,53,114,37,32,103,46,78,32,44,53,48,44,44,48,42,110]).reshape(-1,1)
cena=np.array([9871,9981,8827,11333,8984,7854,5691,9141,8375,6122,9981,8021,10202,8352,10813,10500,8500]).reshape(-1,1)
model=LinearRegression() # inicjujemy model
model.fit(powierzchnia,cena) #trenujemy model
plt.scatter(powierzchnia,cena)
plt.plot(np.linspace(0,120,100).reshape(-1,1),model.predict(np.linspace(0,12,100).reshape(-1,1)),'r') # linia regresji
plt.ylim(0,12000)
plt.xlabel("powierzchnia[m2]")
plt.ylabel("cena [m2]")
plt.title("cena m2 v. powierzchnia")
plt.show()
print(model.predict(np.array([30]).reshape(-1,1))) #prognozujemy ceną dla wybranej losowo powierzchni
Wizualizacja wytyczonej regresji liniowej.