Definire una funzione di aggregazione
Sorpreso dall'alta quota di cartelli nel proprio inventario, il retailer decide che ha senso fare un'ulteriore aggregazione per diverse categorie per esplorare meglio i dati. A te sembra banale, ma finora il retailer non è stato in grado nemmeno di eseguire un'analisi descrittiva di base delle sue transazioni e dei suoi articoli.
Il retailer ti chiede di eseguire l'aggregazione per le categorie candles, bags e boxes. Per semplificare il compito, decidi di scrivere una funzione. Prenderà una stringa che contiene la categoria di un articolo e restituirà un DataFrame che indica se ogni transazione include articoli di quella categoria. Nota che pandas è già stato importato come pd. Inoltre, i dati sono stati importati in formato one-hot encoded come onehot.
Questo esercizio fa parte del corso
Analisi del carrello in Python
Istruzioni dell'esercizio
- Completa la list comprehension che estrae un sottoinsieme delle intestazioni di colonna.
- Seleziona le colonne relative all'articolo che vuoi aggregare.
- Esegui l'aggregazione usando la funzione
aggregate()per bags, boxes e candles usando le stringhebag,boxecandle.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
def aggregate(item):
# Select the column headers for sign items in onehot
item_headers = [i for i in ____.columns if i.lower().find(item)>=0]
# Select columns of sign items
item_columns = onehot[____]
# Return category of aggregated items
return item_columns.sum(axis = 1) >= 1.0
# Aggregate items for the bags, boxes, and candles categories
bags = aggregate('bag')
boxes = aggregate('____')
candles = ____