Uitdaging: Het Model Evalueren
In deze uitdaging krijg je de welbekende woningendataset, maar dit keer alleen met de eigenschap 'age'
.
import pandas as pd df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/houses_poly.csv') print(df.head())
Vervolgens maken we een spreidingsdiagram voor deze gegevens:
import pandas as pd import matplotlib.pyplot as plt df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/houses_poly.csv') X = df['age'] y = df['price'] plt.scatter(X, y, alpha=0.4) plt.show()
Het passen van een rechte lijn op deze gegevens is mogelijk geen goede keuze. De prijs is hoger voor zowel gloednieuwe als zeer oude huizen. Het passen van een parabool lijkt een betere optie. Dat is wat je in deze uitdaging gaat doen.
Maar voordat je begint, herinner je de PolynomialFeatures
-klasse.
De methode fit_transform(X)
vereist dat X
een 2D-array (of een DataFrame) is.
Gebruik X = df[['column_name']]
om je X
geschikt te maken voor fit_transform()
.
En als je een 1D-array hebt, gebruik dan .reshape(-1, 1)
om een 2D-array met dezelfde inhoud te maken.
De opdracht is om een polynomiale regressie van graad 2 te bouwen met behulp van PolynomialFeatures
en OLS
.
Swipe to start coding
- Wijs de variabele
X
toe aan een DataFrame met de kolom'age'
. - Maak een
X_tilde
matrix met behulp van de klassePolynomialFeatures
. - Bouw en train een Polynomial Regression-model.
- Vorm
X_new
om tot een 2D-array. - Verwerk
X_new
op dezelfde manier alsX
. - Print de parameters van het model.
Oplossing
Bedankt voor je feedback!