numpy基础(part8)--符号数组与矢量化
生活随笔
收集整理的這篇文章主要介紹了
numpy基础(part8)--符号数组与矢量化
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
鄙人學(xué)習(xí)筆記,這個(gè)筆記以例子為主。
開(kāi)發(fā)工具:Spyder
文章目錄
- 符號(hào)數(shù)組
- 數(shù)組處理函數(shù)
- 矢量化
符號(hào)數(shù)組
sign()函數(shù)可以把樣本數(shù)組變成對(duì)應(yīng)的符號(hào)數(shù)組,正數(shù)為1,負(fù)數(shù)為-1,0為0.
相關(guān)函數(shù):
np.sign(源數(shù)組)- 例子
代碼:
import numpy as npary01 = np.array([-1, -2, 0, 4, 0, 7]) ary02 = np.sign(ary01)print('ary02:', ary02)結(jié)果:
ary02: [-1 -1 0 1 0 1]數(shù)組處理函數(shù)
相關(guān)函數(shù):
目標(biāo)數(shù)組 = np.piecewise(源數(shù)組, 條件序列, 取值序列)針對(duì)源數(shù)組中的每一個(gè)元素,檢測(cè)其是否符合條件序列中的條件,符合哪個(gè)條件就用取值序列中與之對(duì)應(yīng)的值,來(lái)表示該元素,并放到目標(biāo)數(shù)組中返回。
- 例子
代碼:
import numpy as npary01 = np.array([-1, -2, 0, 4, 0, 7]) ary02 = np.piecewise(ary01, [ary01 < 0, ary01 == 0, ary01 > 0],[-1, 0, 1])print('ary02:', ary02)結(jié)果:
ary02: [-1 -1 0 1 0 1]矢量化
矢量化是指用數(shù)組代替標(biāo)量,來(lái)操作數(shù)組中的每一個(gè)元素
numpy提供了vectorize()函數(shù),該函數(shù)可以把處理標(biāo)量的函數(shù)矢量化,它的返回值是一個(gè)可以直接處理ndarray數(shù)組的函數(shù)。
- 例子
代碼:
import numpy as np#處理標(biāo)量的函數(shù) def fun01(a, b):return a*b - 1ary01 = np.arange(3, 9).reshape(2, 3) ary02 = np.arange(4, 10).reshape(2, 3)#矢量化函數(shù) fun01_vec = np.vectorize(fun01) print(fun01_vec(ary01, ary02))結(jié)果:
[[11 19 29][41 55 71]]總結(jié)
以上是生活随笔為你收集整理的numpy基础(part8)--符号数组与矢量化的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: D-Link DIR-822 无线路由器
- 下一篇: 推特找到新CEO,马斯克造车会更专心?