Définir un problème

Feature Engineering avec PySpark

John Hogue

Lead Data Scientist, General Mills

Quel est votre problème ?

Prédire le prix de vente d'une maison

  • Prix affiché et caractéristiques fournis
    • $X$, variables indépendantes « connues »
  • À quel prix acheter la maison
    • $Y$, variable dépendante « inconnue »
    • SALESCLOSEPRICE

Maisons à vendre

Feature Engineering avec PySpark

Contexte et limites de nos données immobilières

  • Maisons vendues dans la zone de St Paul (MN)
    • Inclut plusieurs banlieues
  • Types de biens
    • Résidentiel‑Individuel
    • Résidentiel‑Multi‑famille
  • Données sur une année complète
    • Effet de la saisonnalité

St Paul, MN

Feature Engineering avec PySpark

Quels types d'attributs sont disponibles ?

  • Dates
    • Date d'annonce
    • Année de construction
  • Localisation
    • Ville
    • District scolaire
    • Adresse
  • Taille
    • # Chambres & Salles de bain
    • Surface habitable
  • Prix
    • Prix affiché
    • Prix de vente final
  • Équipements
    • Piscine
    • Cheminée
    • Garage
  • Matériaux de construction
    • Bardage
    • Toiture
Feature Engineering avec PySpark

Valider le chargement des données

  • DataFrame.count() pour le nombre de lignes
df.count()
5000
  • DataFrame.columns pour la liste des colonnes
df.columns
['No.', 'MLSID', 'StreetNumberNumeric', ... ]
  • Longueur de DataFrame.columns pour le nombre de colonnes
len(df.columns)
74
Feature Engineering avec PySpark

Vérifier les types de données

DataFrame.dtypes

  • Crée une liste de couples colonne/type de données
df.dtypes
[('No.', 'integer'), ('MLSID', 'string'), ... ]
Feature Engineering avec PySpark

Passons à la pratique !

Feature Engineering avec PySpark

Preparing Video For Download...