Broadcasting tra colonne
Ricorda che, quando fai broadcasting tra colonne, NumPy richiede che tu sia esplicito nell’indicare che deve effettuare il broadcasting di un array verticale, e in NumPy non esistono array 1D orizzontali o verticali. Devi quindi prima creare un array 2D per dichiarare che i tuoi dati sono verticali. Poi, NumPy crea una copia di questo array 2D verticale per ogni colonna e applica l’operazione desiderata.
È disponibile una lista Python chiamata monthly_growth_rate con len() pari a 12. Questa lista rappresenta la crescita mensile anno su anno attesa per l’economia; il tuo compito è usare il broadcasting per moltiplicare questa lista per ciascuna colonna dell’array monthly_sales. L’array monthly_sales è già caricato, così come numpy come np.
Questo esercizio fa parte del corso
Introduzione a NumPy
Istruzioni dell'esercizio
- Converti
monthly_growth_rate, attualmente una lista Python, in un array NumPy monodimensionale chiamatomonthly_growth_1D. - Rimodella
monthly_growth_1Din modo che sia adatto al broadcasting per colonne sumonthly_sales; chiama il nuovo arraymonthly_growth_2D. - Usando il broadcasting, moltiplica ogni colonna di
monthly_salespermonthly_growth_2D.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Convert monthly_growth_rate into a NumPy array
monthly_growth_1D = ____
# Reshape monthly_growth_1D
monthly_growth_2D = monthly_growth_1D.____
# Multiply each column in monthly_sales by monthly_growth_2D
print(____)