Udfordring: Evaluering af Modellen
I denne udfordring får du det velkendte boligdatasæt, men denne gang kun med 'age'
-variablen.
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())
Dernæst oprettes et scatterplot for disse data:
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()
At tilpasse en ret linje til disse data er måske ikke det bedste valg. Prisen bliver højere for enten helt nye eller meget gamle huse. At tilpasse en parabel ser ud til at være et bedre valg. Det er netop det, du skal gøre i denne udfordring.
Men før du begynder, skal du huske på klassen PolynomialFeatures
.
Metoden fit_transform(X)
kræver, at X
er et 2-D array (eller en DataFrame).
Ved at bruge X = df[['column_name']]
får du din X
klar til fit_transform()
.
Hvis du har et 1-D array, skal du bruge .reshape(-1, 1)
for at lave et 2-D array med det samme indhold.
Opgaven er at opbygge en polynomiel regression af grad 2 ved hjælp af PolynomialFeatures
og OLS
.
Swipe to start coding
- Tildel variablen
X
til en DataFrame, der indeholder kolonnen'age'
. - Opret en
X_tilde
matrix ved hjælp af klassenPolynomialFeatures
. - Opbyg og træn en Polynomial Regression-model.
- Omform
X_new
til at være et 2D-array. - Forbehandl
X_new
på samme måde somX
. - Udskriv modellens parametre.
Løsning
Tak for dine kommentarer!