我正在嘗試在具有形狀 (n, 10) 的陣列中創建 0 和 1 的所有可能組合。例如,如果我們假設這樣的任意組合:np.array([0, 0, 1, 1, 0, 0, 1, 1, 0, 0]),我如何生成所有可能的組合(這將導致在 2^10=1024 個陣列中)?
uj5u.com熱心網友回復:
是的,您可以使用itertools.product()
引數repeat
來生成所需的輸出:
import numpy as np
from itertools import product
np.array(list(product([0, 1], repeat=10)))
這輸出:
[[0 0 0 ... 0 0 0]
[0 0 0 ... 0 0 1]
[0 0 0 ... 0 1 0]
...
[1 1 1 ... 1 0 1]
[1 1 1 ... 1 1 0]
[1 1 1 ... 1 1 1]]
uj5u.com熱心網友回復:
您可以permutations
從itertools
模塊中使用:
import numpy as np
import itertools
list = np.array([0, 0, 1, 1, 0, 0, 1, 1, 0, 0])
combs = itertools.permutations(list)
for i in combs:
print(i)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/469095.html