[英]Numpy array with arrays of different size inside
我想創建一個3D np.array
命名為大小可變的output
。 大小為(5,a,b)的數組; 隨着a和b的變化(b減小):
(a,b) = (1000,20)
(a,b) = (1000,19)
(a,b) = (1000,18)
(a,b) = (1000,17)
(a,b) = (1000,16)
我可以創建一個數組數組來這樣做,但是稍后我想獲取所有數組的第一列(沒有循環),那么我不能使用:
output[:,:,0]
串聯它們也不會起作用,它要求數組的大小相同。
是否有其他選擇能夠具有變化的單個數組而不是數組?
謝謝!
就像@Divakar所說的那樣,用類型object創建一個空數組,並將不同大小的數組分配給它們各自的索引。
import numpy as np
arrs = [np.ones((5, i, 10 - i)) for i in range(10)]
arrs[0].shape
(5, 0, 10)
arrs[1].shape
(5, 1, 9)
out = np.emtpy(len(arrs), dtype=object)
out[:] = arrs
out[0].shape
(5, 0, 10)
out[1].shape
(5, 1, 9)
也許您可以列出並添加這5個數組。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.