Tensorflow中 numpy 陣列 操作
np.linspace(1, 10 , 10)
這個函式的使用是:取1到10之間的數。並且每個顯示10個數字。
引數一: 1 ----- >>> 取值的開始數字
引數二:10 ----- >>> 取值的最大值
引數三:10 ----->>> 取10個數字
Result:[ 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.]
同理,換個引數
np.linspace(1 , 10 , 5) --- >>> Result : [ 1. 3.25 5.5 7.75 10. ]
np.newaxis 該函式主要是用來增加維度
[np.newaxis,:] 橫向增加維度
[: ,np.newaxis] 縱向增加維度
np.r_
這個函式讓我理解不透,但是根據顯示的結果發現了一些規律
np.r_[2 : 6 , 0 , 4]
----- >>> [2 3 4 5 0 4]
該API我的理解是:顯示2-6之間的數字,並且最後增加0 和 4 兩個數字
陣列進行分割 np.hsplit
假設有個二維陣列 [2 , 8]
m = np.array([
[8. , 8. , 3. , 9. ,0. , 4. , 3. , 0. ],
[0. , 3. , 2. , 9. ,6. , 4. , 5. , 7.]
])
A:平均切割這個陣列
np.hsplit(m , 2)
---- >>>
陣列(1) 陣列(2)
[ [
[8. , 8. , 3. , 9.], [0. , 4. , 3. , 0. ],
[0. , 3. , 2. , 9. ] [6. , 4. , 5. , 7.]
] ]
B:根據陣列下標切分
np.hsplit(m , (2 , 4) 以 下標 == 2 和下標 == 4作為兩個分割符,將該陣列分成三部分
------>>>>>
陣列(1) 陣列(2) 陣列(3)
[ [ [
[8., 8.], [3., 9.], [0., 4., 3., 0.],
[0., 3.] [2., 9.] [6., 4., 5., 7.]
] ] ]
一維陣列的擷取
m = np.array([8. , 5. , 3. , 9. ,0. , 4. , 3. , 0. ])
#print(m)
print(m[1:4])
# [5. , 3. , 9.]