Broadcasten over kolommen
Onthoud dat NumPy bij broadcasten over kolommen expliciet moet weten dat het een verticale array moet broadcasten, en dat horizontale en verticale 1D-arrays niet bestaan in NumPy. In plaats daarvan moet je eerst een 2D-array maken om aan te geven dat je verticale data hebt. Vervolgens maakt NumPy voor elke kolom een kopie van deze verticale 2D-array en past het de gewenste bewerking toe.
Er is een Python-lijst monthly_growth_rate beschikbaar met len() gelijk aan 12. Deze lijst staat voor de maandelijkse jaar-op-jaar verwachte groei van de economie. Je taak is om met broadcasting deze lijst te vermenigvuldigen met elke kolom in de array monthly_sales. De array monthly_sales is geladen, samen met numpy als np.
Deze oefening maakt deel uit van de cursus
Introductie tot NumPy
Oefeninstructies
- Zet
monthly_growth_rate, nu een Python-lijst, om naar een eendimensionale NumPy-array met de naammonthly_growth_1D. - Reshape
monthly_growth_1Dzodat deze kolomsgewijs overmonthly_saleste broadcasten is; noem de nieuwe arraymonthly_growth_2D. - Gebruik broadcasting om elke kolom in
monthly_saleste vermenigvuldigen metmonthly_growth_2D.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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(____)