+、-、*、/、**:加減乘除冪運算
&、|、~:與或非運算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 ...