Numpy中向量與標量計算

2021-09-22 22:45:59 字數 1801 閱讀 9078

+、-、*、/、**:加減乘除冪運算

import numpy as np

a=np.array([1,2,3])

b=np.array([3,2,1])

print (a+10) #對應位置依次相加

print (a*2)

print ([1,2,3]*2)

print (a+b)

print (a-b)

print (a*b)

print (a/b)

print (a**b) #次冪操作

[11 12 13]

[2 4 6]

[1, 2, 3, 1, 2, 3]

[4 4 4]

[-2 0 2]

[3 4 3]

[0.33333333 1. 3. ]

[1 4 3]

&、|、~:與或非運算

如3&2,3按照二進位制為11,2按二進位制為10,3&2就相當於11&10,得到了10為2

3&2=2

3|2=3

非操作,如~3,,機器是32位了,3=0000......0000 0011,非操作就是把所有的0變成1,1變成0,

~3=1111......1111 1100,計算機中首位是1表示乙個負數,後面的數用補碼實現,一般是把補碼取非操作,然後再+1得到自然數

即:1後面的很多0取非操作,0000......0000 0011=3,3+1=4,再加乙個符號為-4

所以~3=-4

~n=-(n+1)

import numpy as np

a=np.array([true,true,false,false]) #當為布林型別,做與或非操作

b=np.array([true,false,true,false])

c=np.array([1,2,3])

d=np.array([2,1,2])

print (a|b) #布林或

print (a&b) #布林與

print (~a) #布林非

print (c|d) #按位或

print (c&d) #按位與

print (~c) #按位非

[ true  true  true false]

[ true false false false]

[false false true true]

[3 3 3]

[0 0 2]

[-2 -3 -4]

>、>=、<、<=、==、!=大於小於等於不等運算

import numpy as np

a=np.array([1,2,3])

b=np.array([3,2,1])

print (a>b)

print (a>=b)

print (aprint (a<=b)

print (a==b)

print (a!=b)

[false false  true]

[false true true]

[false false false]

[ true true false]

[false true false]

[ true false true]

numpy 基礎 陣列與向量計算(一)

在本次的部落格中,我將展示一些 jupyter陣列與向量計算的常用語法。import numpy as np my arr np.arange 10000 生成範圍為 0,9999 這10000個數字 my list list range 10000 time for i in range 10 m...

NumPy基礎 陣列和向量計算(二)

通用函式 numpy中可以使用一些通用函式對ndarray進行元素級別的運算,這些函式的元素比我們採用迴圈的方式對元素的逐一運算快很多,豐富的通用函式可以滿足很多運算的需求。以對所有元素進行開方為例。in arr np.arange 10 in arr out array 0,1,2,3,4,5,6...

稀疏向量計算優化小結

在各種演算法中,向量計算是最經常使用的一種操作之中的乙個。傳統的向量計算,學過中學數學的同學也能明確怎麼做。但在如今的大資料環境下。資料一般都會比較稀疏,因此稀疏向量的計算,跟普通向量計算。還是存在一些不同。首先,我們定義兩個向量 a x1,x2,xn b y1,y 2,yn 定義a b的點積為a ...