1. 程式人生 > 其它 >批量生成陣列_Python資料分析類庫系列-Numpy之陣列的運算

批量生成陣列_Python資料分析類庫系列-Numpy之陣列的運算

技術標籤:批量生成陣列

211c61170f3dd613b32a73f38a2e70f9.png

陣列很重要,因為它使你不用編寫迴圈即可對資料執行批量運算,NumPy使用者稱其為向量化(vectorization)。大小相等的陣列之間的任何算術運算都會將運算應用到元素級。

常用的運算方式包含:加法,減法,乘法,除法,求餘,比較,等等。利用Numpy對陣列進行運算擁有極高的效率,關於這部分內容我們在Numpy系列第一篇內容演示過,這裡不再重複,忘了的同學可以翻看公眾號的專輯。

import numpy as np

arr = np.array([[1., 2., 3.], [4., 5., 6.]])
arr

out:
array([[1., 2., 3.],
       [4., 5., 6.]])
arr * arr

out:
array([[ 1.,  4.,  9.],
       [16., 25., 36.]])
arr - arr

out
array([[0., 0., 0.],
       [0., 0., 0.]])
1 / arr

out:
array([[0.5, 1. , 1.5],
       [2. , 2.5, 3. ]])

大小相同的陣列之間的比較會生成布林值陣列

arr2 = np.array([[0., 4., 1.], [7., 2., 12.]])
arr2

out

array([[ 0.,  4.,  1.],
       [ 7.,  2., 12.]])
arr2 > arr1

out
array([[False,  True, False],
       [ True, False,  True]]

不同大小的陣列之間的運算叫做廣播(broadcasting),將在附錄A中對其進行詳細討論。本書的內容不需要對廣播機制有多深的理解。

下期我們將分享Numpy基本的索引和切片,如果喜歡請點贊收藏,您的支援是我最大的動力,謝謝大家,共同進步。

b64d51aa406b003822f66b716601014a.png