Broadcasting ข้ามคอลัมน์
เมื่อต้องการ broadcast ข้ามคอลัมน์ NumPy กำหนดให้ระบุอย่างชัดเจนว่าต้องการ broadcast array แนว แนวตั้ง เนื่องจาก NumPy ไม่มี 1D array แนวนอนหรือแนวตั้งโดยตรง จึงต้องสร้าง 2D array ขึ้นมาก่อนเพื่อบอกว่าข้อมูลของคุณอยู่ในแนวตั้ง จากนั้น NumPy จะสร้างสำเนาของ 2D array แนวตั้งนี้สำหรับแต่ละคอลัมน์แล้วนำไปคำนวณตามที่ต้องการ
มี Python list ชื่อ monthly_growth_rate ที่มี len() เท่ากับ 12 โดยแสดงถึงอัตราการเติบโตทางเศรษฐกิจแบบ year-over-year รายเดือนที่คาดการณ์ไว้ งานของคุณคือใช้ broadcasting เพื่อคูณ list นี้กับแต่ละคอลัมน์ใน array monthly_sales โดย array monthly_sales ถูกโหลดไว้แล้ว พร้อมกับ numpy ในชื่อ np
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
NumPy เบื้องต้น
คำแนะนำการฝึกหัด
- แปลง
monthly_growth_rateซึ่งปัจจุบันเป็น Python list ให้เป็น NumPy array แบบหนึ่งมิติ แล้วตั้งชื่อว่าmonthly_growth_1D - ปรับรูปร่าง
monthly_growth_1Dให้สามารถ broadcast ตามแนวคอลัมน์ข้ามmonthly_salesได้ แล้วตั้งชื่อ array ใหม่ว่าmonthly_growth_2D - ใช้ broadcasting เพื่อคูณแต่ละคอลัมน์ใน
monthly_salesด้วยmonthly_growth_2D
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# 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(____)