Видобування тексту в нові ознаки
Гараж — важливий чинник для будинків у Міннесоті, де більшість людей мають авто, а зчищати сніг з машини, припаркованої надворі, незручно. Тип гаража теж має значення: чи можете ви дістатися до авто, не ризикуючи змерзнути? Створімо ознаку has_attached_garage, яка фіксуватиме, чи гараж прибудований до будинку, чи ні.
Ця вправа є частиною курсу
Опрацювання ознак у PySpark
Інструкції до вправи
- Імпортуйте потрібну функцію
when()зpyspark.sql.functions. - Створіть умову пошуку рядка, використовуючи
like()для шаблонуAttached Garageуdf['GARAGEDESCRIPTION'], і застосуйте символи підстановки%, щоб збіг відбувався будь-де в полі. - Аналогічно створіть іншу умову з
like()для шаблонуDetached Garageуdf['GARAGEDESCRIPTION']і також використайте символи підстановки%, щоб збіг відбувався будь-де в полі. - Створіть новий стовпець
has_attached_garage, використовуючиwhen(): присвоюйте значення 1, якщо гараж прибудований, 0 — якщо відокремлений, і застосуйтеotherwise()для присвоєння null значеннямNone, якщо не виконується жодна з умов.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Import needed functions
____ ____ ____ ____
# Create boolean conditions for string matches
has_attached_garage = df[____].____(____)
has_detached_garage = df[____].____(____)
# Conditional value assignment
df = df.withColumn(____, (____(____, 1)
.____(____, 0)
.____(____)))
# Inspect results
df[['GARAGEDESCRIPTION', 'has_attached_garage']].show(truncate=100)