ПочатиПочніть безкоштовно

Глибші ознаки

У попередніх вправах ми показали, як поєднання двох ознак може дати корисні додаткові ознаки для прогностичної моделі. У цій вправі ви згенеруєте «глибші» ознаки, поєднавши вплив трьох змінних в одну. Потім перевірите, чи завжди глибші й складніші ознаки є кращими предикторами.

Ця вправа є частиною курсу

Опрацювання ознак у PySpark

Переглянути курс

Інструкції до вправи

  • Створіть нову ознаку, додавши SQFTBELOWGROUND і SQFTABOVEGROUND, і створіть новий стовпець Total_SQFT
  • Використовуючи Total_SQFT, створіть ще одну ознаку під назвою BATHS_PER_1000SQFT з BATHSTOTAL. Обов'язково масштабуте Total_SQFT до тисяч
  • Використайте describe(), щоб переглянути нові мінімум, максимум і середнє для нашої найновішої ознаки BATHS_PER_1000SQFT. Чи не помітили чогось дивного?
  • Створіть два jointplots() з Total_SQFT і BATHS_PER_1000SQFT як значеннями \(x\) та SALESCLOSEPRICE як значенням \(y\), щоб побачити, яка з ознак має кращу підгонку R**2. Чи має ця складніша ознака сильніший зв'язок із SALESCLOSEPRICE?

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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()
Редагувати та запускати код