簡體   English   中英

創建一個 N 維 numpy 數組列表

[英]create a list of list of N-dimensional numpy arrays

我想創建一個 2x2 numpy 數組列表

array([[0, 0],
       [1, 1]])

例如,我想用 8 個這樣的數組填充一個列表。

x = [] 

for j in range(9):
    for i in np.random.randint(2, size=(2, 2)):
        x.append([i])

這給了我一個 1x1 數組

z = iter(x)

next(z)

[array([0, 1])]

我在這里錯過了什么?

你錯過了在 2x2 數組上迭代 9 次。 每次迭代都會產生一行數組,這是您查看第一個元素時所看到的 - 第一個矩陣的第一行。 不僅如此,您將這一行附加到一個列表中,因此您實際上有 18 個包含單個元素的列表。 你想要做的是直接附加矩陣,沒有內部循環,絕對沒有額外的[]周圍,​​或者更好:

x = [np.random.randint(2, size=(2, 2)) for _ in range(9)]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM