Broadcasting ဆိုတာ shape မတူတဲ့ array တွေကို NumPy က စည်းမျဉ်းအချို့အရ ကိုက်ညီအောင်တွက်ပေးတဲ့ mechanism ပါ။ ဥပမာ table တစ်ခုရဲ့ row တိုင်းကို tax rate တူတူထပ်ပေါင်းတာ၊ column တစ်ခုချင်းစီကို different scale နဲ့မြှောက်တာမျိုးမှာ loop မရေးဘဲတွက်နိုင်ပါတယ်။
import numpy as np
# 2 rows x 3 columns
sales = np.array([
[100, 200, 300],
[400, 500, 600]
])
# 3 values: one value for each column
bonus = np.array([10, 20, 30])
final_sales = sales + bonus
print(final_sales)sales က shape (2, 3) ဖြစ်ပြီး bonus က shape (3,) ဖြစ်ပါတယ်။ NumPy က bonus ကို row တစ်ခုချင်းစီအတွက် တူတူသက်ရောက်စေပြီး column အလိုက်ပေါင်းပေးပါတယ်။
[[110 220 330] [410 520 630]]Info
Broadcasting က magic လိုမြင်ရပေမယ့် rule ရှိပါတယ်။ နောက်ဆုံး dimension တွေက တူရမယ်၊ ဒါမှမဟုတ် dimension တစ်ခုက 1 ဖြစ်ရမယ်။ မကိုက်ရင် shape error တက်ပါမယ်။