Python科学计算扩展库NumPy之广播(Broadcast)
生活随笔
收集整理的這篇文章主要介紹了
Python科学计算扩展库NumPy之广播(Broadcast)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
廣播的規則:
??? 讓所有輸入數組都向其中形狀最長的數組看齊,形狀中不足的部分都通過在前面加 1 補齊。
??? 輸出數組的形狀是輸入數組形狀的各個維度上的最大值。
??? 如果輸入數組的某個維度和輸出數組的對應維度的長度相同或者其長度為 1 時,這個數組能夠用來計算,否則出錯。
??? 當輸入數組的某個維度的長度為 1 時,沿著此維度運算時都用此維度上的第一組值。
簡單理解:對兩個數組,分別比較他們的每一個維度(若其中一個數組沒有當前維度則忽略),滿足:
??? 數組擁有相同形狀。
??? 當前維度的值相等。
??? 當前維度的值有一個是 1。
若條件不滿足,拋出 "ValueError: frames are not aligned" 異常。
#!/usr/bin/env python import numpy as npa = np.array([10, 20, 30, 40]) b = np.array([100, 100, 100, 100]) c = np.array([100])result1 = a + b print(result1)result2 = a + c print(result2)打印結果如下:
[110 120 130 140] [110 120 130 140]?
總結
以上是生活随笔為你收集整理的Python科学计算扩展库NumPy之广播(Broadcast)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python科学计算扩展库NumPy之n
- 下一篇: 全面对比 MATLAB、Julia、Py