Creare nuove feature
La feature engineering include anche la creazione vera e propria di nuove feature. Crearle è importante perché il modello si affida a queste feature per ottenere previsioni accurate. In questo esercizio, controllerai le proprietà di tre colonne che appaiono come interi nei dati ma rappresentano valori categorici. Queste tre colonne sono: search_engine_type, product_type e advertiser_type. Creerai feature di conteggio per queste 3 colonne, oltre che per device_id e site_id. Queste feature di conteggio rappresentano il numero di clic per ciascuna di queste colonne e verranno utilizzate più avanti per la previsione.
Il modulo pandas è disponibile come pd nel tuo workspace e il DataFrame di esempio è caricato come df.
Questo esercizio fa parte del corso
Prevedere il CTR con il Machine Learning in Python
Istruzioni dell'esercizio
- Stampa il numero totale di valori e il numero di valori unici per ciascuna feature nella lista
feature_list. - Crea nuove feature a partire dalle feature in
new_feature_listcontando il numero di clic per ciascuna feature usando.transform().
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Get counts of total and unique values for given features
feature_list = ["search_engine_type", "product_type", "advertiser_type"]
for feature in feature_list:
print(df[feature].____)
print(df[feature].____)
# Define new features as counts
new_feature_list = ['device_id', 'site_id'] + feature_list
for new_feature in new_feature_list:
df[new_feature + '_count'] = df.____(
new_feature)['click'].____("count")
print(df.head(5))