Numpy的一些學習記錄
阿新 • • 發佈:2020-08-15
Numpy的一些記錄
產生numpy.array的方式
import numpy as np
arr1 = np.array([1, 2, 3])
print(arr1)
arr2 = np.zeros(3)
print(arr2)
arr3 = np.ones(3)
print(arr3)
arr4 = np.random.randint(1, 10, 3)
print(arr4)
arr5 = np.arange(3)
print(arr5)
arr6 = np.linspace(1, 3, 3)
print(arr6)
產生隨機數陣列
import numpy as np # 產生隨機整數arr arr1 = np.random.randint(1, 100, 10) # 從 [1, 100)的區間內,取10個整數 # 隨機產生小數arr arr2 = np.random.random(10) # 從[0, 1)之間產生10個小數 # 通過洗牌函式shuffle arr3 = np.arang(10) np.random.shuffle(arr3) # 傳入np.arr或者list,並對其進行打亂,返回None
結果如下所示:
[51 66 69 10 59 62 42 10 66 38]
[0.36556901 0.00594538 0.96820174 0.15049347 0.17797086 0.0837191
0.64086666 0.27320334 0.4595817 0.19450983]
[5 2 7 9 3 6 8 4 0 1]
一些數學函式
import numpy as np # min,max,sum,mean a = np.arange(10) print(np.max(a)) print(np.min(a)) print(np.mean(a)) print(np.sum(a)) # sin,cos,tan,arccos...三角函式 print(np.sin(a)) print(np.cos(a)) print(np.tan(a)) # exp,exp2,sqrt,floor,ceil... print(np.exp(a)) print(np.exp2(a)) print(np.sqrt(a))
邏輯運算子
import numpy as np
# logical_or,logical_and,logical_not,logical_xor
a = np.array([0, 0, 0])
b = np.array([1, 1, 0])
print(np.logical_and(a, b))
print(np.logical_or(a, b))
print(np.logical_not(b))
print(np.logical_xor(a, b))
結果:
[False False False] [ True True False] [False False True] [ True True False]
一些新奇的用法
可以對True做加法求和(不過好像是Python的緣故,而不是numpy的)
import numpy as np
a = np.arange(5)
res = a <= 2
print(np.sum(res))
print(True == 1)
'''
3
True
'''