Zacznij terazZacznij za darmo

Głębsze cechy

W poprzednich ćwiczeniach pokazaliśmy, jak łączenie dwóch cech może tworzyć przydatne dodatkowe cechy dla modelu predykcyjnego. W tym ćwiczeniu wygenerujesz „głębsze" cechy, łącząc wpływ trzech zmiennych w jedną. Następnie sprawdzisz, czy bardziej złożone cechy zawsze przekładają się na lepsze predyktory.

To ćwiczenie jest częścią kursu

Inżynieria cech z PySpark

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz nową cechę, dodając SQFTBELOWGROUND i SQFTABOVEGROUND, i zapisz wynik w nowej kolumnie Total_SQFT
  • Korzystając z Total_SQFT, utwórz kolejną cechę o nazwie BATHS_PER_1000SQFT przy użyciu BATHSTOTAL. Pamiętaj, aby przeskalować Total_SQFT do tysięcy
  • Użyj describe(), aby sprawdzić nowe wartości min, max i średnią dla najnowszej cechy BATHS_PER_1000SQFT. Czy coś rzuca się w oczy?
  • Utwórz dwa wykresy jointplot() z Total_SQFT i BATHS_PER_1000SQFT jako wartościami \(x\) oraz SALESCLOSEPRICE jako wartością \(y\), aby sprawdzić, który zapewnia lepsze dopasowanie R**2. Czy ta bardziej skomplikowana cecha wykazuje silniejszy związek z SALESCLOSEPRICE?

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Create new feature by adding two features together
df = df.____(____, df[____] + df[____])

# Create additional new feature using previously created feature
df = df.____(____, df[____] / (df[____] / ____))
df[[____]].____().show()

# Sample and create pandas dataframe
pandas_df = df.sample(False, 0.5, 0).toPandas()

# Linear model plots
sns.jointplot(x=____, y=____, data=pandas_df, kind="reg", stat_func=r2)
plt.show()
sns.jointplot(x=____, y=____, data=pandas_df, kind="reg", stat_func=r2)
plt.show()
Edytuj i uruchom kod