numpy之通用函數(shù)

通用函數(shù)-元素級數(shù)組函數(shù)

通用函數(shù)(ufunc)是一種對ndarray執(zhí)行元素級運(yùn)算的函數(shù)柬唯。

一元ufunc


import numpy as np
arr = np.arange(-10,10,2)
arr
Out[5]: array([-10,  -8,  -6,  -4,  -2,   0,   2,   4,   6,   8])

np.abs(arr)#絕對值
Out[7]: array([10,  8,  6,  4,  2,  0,  2,  4,  6,  8])
np.fabs(arr)#絕對值
Out[8]: array([ 10.,   8.,   6.,   4.,   2.,   0.,   2.,   4.,   6.,   8.])

1.abs东跪、fabs計(jì)算整數(shù)子眶、浮點(diǎn)數(shù)或復(fù)數(shù)的絕對值膝捞。對于非復(fù)數(shù)值坦刀,可以使用更快的fabs。

arr1 = np.arange(16)

np.sqrt(arr1)#平方根蔬咬,即arr1 ** 0.5
Out[19]: 
array([ 0.        ,  1.        ,  1.41421356,  1.73205081,  2.        ,
        2.23606798,  2.44948974,  2.64575131,  2.82842712,  3.        ,
        3.16227766,  3.31662479,  3.46410162,  3.60555128,  3.74165739,
        3.87298335])

np.square(arr1)#平方
Out[20]: 
array([  0,   1,   4,   9,  16,  25,  36,  49,  64,  81, 100, 121, 144,
       169, 196, 225], dtype=int32)

arr2 = np.exp(arr1)#各元素的指數(shù)e**x
Out[21]: 
array([  1.00000000e+00,   2.71828183e+00,   7.38905610e+00,
         2.00855369e+01,   5.45981500e+01,   1.48413159e+02,
         4.03428793e+02,   1.09663316e+03,   2.98095799e+03,
         8.10308393e+03,   2.20264658e+04,   5.98741417e+04,
         1.62754791e+05,   4.42413392e+05,   1.20260428e+06,
         3.26901737e+06])

np.log(arr2) #自然對數(shù)(底數(shù)為e)
Out[24]: 
array([  0.,   1.,   2.,   3.,   4.,   5.,   6.,   7.,   8.,   9.,  10.,
        11.,  12.,  13.,  14.,  15.])
  1. log10鲤遥,log2,log1p林艘,其底數(shù)分別為盖奈,10,2;以及l(fā)og(1+ P)
  2. singn 計(jì)算個(gè)元素正負(fù)號狐援,1(正數(shù))钢坦,0(零),-1(負(fù)數(shù))
np.sign(arr) #正負(fù)號
Out[25]: array([-1, -1, -1, -1, -1,  0,  1,  1,  1,  1])
  1. ceil返回大于等于該值的最小整數(shù)咕村。
  2. floor 返回小于等于該值的最大整數(shù)场钉。
  3. rint四舍五入,保留dtype懈涛。
  4. modf將數(shù)組的小數(shù)和整數(shù)部分一兩個(gè)獨(dú)立數(shù)組的形式返回逛万。
arr3 = np.random.randn(5)

arr3
Out[27]: array([ 0.0830739 , -2.18172821,  0.77026638,  0.70735324, -1.02929973])

np.ceil(arr3)#返回>=最小整數(shù)
Out[28]: array([ 1., -2.,  1.,  1., -1.])

np.floor(arr3)#返回<=最大整數(shù)
Out[29]: array([ 0., -3.,  0.,  0., -2.])

np.rint(arr3)#四舍五入
Out[30]: array([ 0., -2.,  1.,  1., -1.])

np.modf(arr3)#拆分整數(shù)和小數(shù)
Out[31]: 
(array([ 0.0830739 , -0.18172821,  0.77026638,  0.70735324, -0.02929973]),
 array([ 0., -2.,  0.,  0., -1.]))
  1. isnan返回布爾型數(shù)組,表示哪些值是NaN(非數(shù)字)。
  2. isfinite/isinf返回布爾型數(shù)組宇植,表示哪些元素是有窮的(非inf得封,非NaN)或那些是無窮的。
  3. cos,cosh,sin,sinh,tan,tanh普通型和雙曲型三角函數(shù)指郁。
  4. arccos,arccosh,arcsin,arcsinh,asrtan,arctanh反三角函數(shù)忙上。
  5. logical_not計(jì)算個(gè)元素的not x的真值,相當(dāng)于-arr闲坎。

arr4 = np.arange(-10,10,2)
np.logical_not(arr4<=0)
Out[39]: array([False, False, False, False, False, False,  True,  True,  True,  True], dtype=bool)

二元ufunc

  1. add 元素對應(yīng)相加疫粥。
  2. subtract 第一個(gè)數(shù)組元素減去第二個(gè)的元素。
  3. multiply 數(shù)組元素相乘腰懂。
  4. divide,floor_divide 除法梗逮,或向下整除(丟棄余數(shù))。
  5. power第一個(gè)數(shù)組中的元素A绣溜,第二個(gè)數(shù)組中的元素B慷彤,返回A的B次方。
arr5 = np.arange(10)

arr6 = np.arange(10,20)

np.add(arr5,arr6) #相加
Out[44]: array([10, 12, 14, 16, 18, 20, 22, 24, 26, 28])

np.subtract(arr6,arr5)#相減
Out[47]: array([10, 10, 10, 10, 10, 10, 10, 10, 10, 10])

np.multiply(arr5,arr6)#對應(yīng)相乘
Out[48]: array([  0,  11,  24,  39,  56,  75,  96, 119, 144, 171])

np.divide(arr5,arr6)#相除
Out[50]: 
array([ 0.        ,  0.09090909,  0.16666667,  0.23076923,  0.28571429,
        0.33333333,  0.375     ,  0.41176471,  0.44444444,  0.47368421])

arr7 = np.arange(20,30)

np.floor_divide(arr7,arr6)#整除
Out[54]: array([2, 1, 1, 1, 1, 1, 1, 1, 1, 1], dtype=int32)

arr8 = np.arange(5)
arr9 = np.arange(5,10)

np.power(arr9,arr8)#次冪
Out[60]: array([   1,    6,   49,  512, 6561], dtype=int32)

  1. maximum,fmax返回兩個(gè)數(shù)組中較大值組成的數(shù)組怖喻。fmax忽略NaN底哗。
  2. minimum,fmin同上。
  3. mod求模锚沸,即求余數(shù)跋选。
  4. copysign第二個(gè)數(shù)組的符號,復(fù)制給第一個(gè)數(shù)組哗蜈。
x = np.random.randn(5)

y = np.random.randn(5)

x
Out[65]: array([-1.34391461,  0.58819335,  0.19195261, -0.5660927 ,  0.98594434])

y
Out[66]: array([-0.57704395, -0.40143752, -0.83931321, -0.38734544,  1.2436085 ])

np.maximum(x,y)#元素及最大值計(jì)算
Out[68]: array([-0.57704395,  0.58819335,  0.19195261, -0.38734544,  1.2436085 ])

np.minimum(x,y)#元素級最小值計(jì)算
Out[69]: array([-1.34391461, -0.40143752, -0.83931321, -0.5660927 ,  0.98594434])

m = np.arange(1,5)

n = np.arange(6,10)

np.mod(n,m)#求模
Out[83]: array([0, 1, 2, 1], dtype=int32)

np.copysign(y,x)#符號復(fù)制
Out[90]: array([-0.57704395,  0.40143752,  0.83931321, -0.38734544,  1.2436085 ])

  1. greater,greater_equal,less,less_equal,equal,not_euqal元素級比較運(yùn)算野建,最終產(chǎn)生布爾型數(shù)組,相當(dāng)于>,>=,<,<=,==,!=恬叹。
  2. logical_and,logical_or,logical_xor元素級真值運(yùn)算,相當(dāng)于&同眯,|绽昼,^。
In [2]: x = np.arange(6)

In [3]: t = np.arange(1,13,2)

In [7]: np.greater(x,t)
Out[7]: array([False, False, False, False, False, False], dtype=bool)

In [8]: np.less_equal(x,t)
Out[8]: array([ True,  True,  True,  True,  True,  True], dtype=bool)

In [10]: np.logical_and(x > 0,t <0)
Out[10]: array([False, False, False, False, False, False], dtype=bool)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末须蜗,一起剝皮案震驚了整個(gè)濱河市硅确,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌明肮,老刑警劉巖菱农,帶你破解...
    沈念sama閱讀 221,888評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異柿估,居然都是意外死亡循未,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,677評論 3 399
  • 文/潘曉璐 我一進(jìn)店門秫舌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來的妖,“玉大人绣檬,你說我怎么就攤上這事∩┧冢” “怎么了娇未?”我有些...
    開封第一講書人閱讀 168,386評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長星虹。 經(jīng)常有香客問我零抬,道長,這世上最難降的妖魔是什么宽涌? 我笑而不...
    開封第一講書人閱讀 59,726評論 1 297
  • 正文 為了忘掉前任平夜,我火速辦了婚禮,結(jié)果婚禮上护糖,老公的妹妹穿的比我還像新娘褥芒。我一直安慰自己,他們只是感情好嫡良,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,729評論 6 397
  • 文/花漫 我一把揭開白布锰扶。 她就那樣靜靜地躺著,像睡著了一般寝受。 火紅的嫁衣襯著肌膚如雪坷牛。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,337評論 1 310
  • 那天很澄,我揣著相機(jī)與錄音京闰,去河邊找鬼。 笑死甩苛,一個(gè)胖子當(dāng)著我的面吹牛蹂楣,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播讯蒲,決...
    沈念sama閱讀 40,902評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼痊土,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了墨林?” 一聲冷哼從身側(cè)響起赁酝,我...
    開封第一講書人閱讀 39,807評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎旭等,沒想到半個(gè)月后酌呆,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,349評論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡搔耕,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,439評論 3 340
  • 正文 我和宋清朗相戀三年隙袁,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,567評論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡藤乙,死狀恐怖猜揪,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情坛梁,我是刑警寧澤而姐,帶...
    沈念sama閱讀 36,242評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站划咐,受9級特大地震影響拴念,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜褐缠,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,933評論 3 334
  • 文/蒙蒙 一政鼠、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧队魏,春花似錦公般、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,420評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至昧谊,卻和暖如春刽虹,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背呢诬。 一陣腳步聲響...
    開封第一講書人閱讀 33,531評論 1 272
  • 我被黑心中介騙來泰國打工涌哲, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人尚镰。 一個(gè)月前我還...
    沈念sama閱讀 48,995評論 3 377
  • 正文 我出身青樓阀圾,卻偏偏與公主長得像睁搭,于是被迫代替她去往敵國和親朝卒。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,585評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 來源:NumPy Tutorial - TutorialsPoint 譯者:飛龍 協(xié)議:CC BY-NC-SA 4...
    布客飛龍閱讀 32,830評論 6 97
  • numpy的數(shù)據(jù)類型 使用numpy 創(chuàng)建ndarrays 數(shù)據(jù)類型使用以及轉(zhuǎn)換 ndarry 標(biāo)量之間的計(jì)算? ...
    MicoCube閱讀 974評論 0 1
  • 目錄: Tab 鍵自動完成 %run命令 “Ctri-C” 中斷正在執(zhí)行的代碼 忘記輸入和輸出文本怎么辦 創(chuàng)建數(shù)組...
    鬼宇書生閱讀 802評論 0 2
  • 我一直執(zhí)著于祛臉上的斑比伏。 我的斑是天生的敞曹。從我有記憶,它就有综膀。 以前也許是臉上膠原蛋白多澳迫,也許是認(rèn)知層面沒有重視。...
    當(dāng)媽姐閱讀 971評論 8 4
  • php trait手冊 trait就是為了避免代碼重復(fù)而生 優(yōu)先級 從基類繼承的成員會被 trait 插入的成員所...
    云龍789閱讀 357評論 0 0