[英]Arthimatic and combining in 3D Arrays Numpy
假設我有一個 3D 數組 x:
x = np.arange(0, 24).reshape(4, 3, 2)
output:
array([[[ 0, 1],
[ 2, 3],
[ 4, 5]],
[[ 6, 7],
[ 8, 9],
[10, 11]],
[[12, 13],
[14, 15],
[16, 17]],
[[18, 19],
[20, 21],
[22, 23]]])
如果我想明智地連接這一行的副本,但每次我想在每對內部的第一個元素上加 1,我該怎么做?
我可以連接 1x
np.concatenate([x, x], axis=0)
大概我可以在一個循環中做到這一點(盡管在 Numpy 中可能有更好的方法)。 但是我不知道如何+1。
這允許我將 1 添加到所有元素,但是我只有一個 3x4 的值矩陣 +1 並且我沒有單元格的 rest!
x[:,:,0] + 1
output:
array([[ 1, 3, 5],
[ 7, 9, 11],
[13, 15, 17],
[19, 21, 23]])
感覺這是一個以前必須問過的問題? 但是我找不到足夠的關於多維 arrays 的算法或切片的材料。
謝謝
只需連接和修改:
a = np.concatenate([x, x], axis=0)
a[x.shape[0]:,:,0] += 1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.