如何撤消 Python 列表中的数组?
How to undo an array inside of a list in Python?
我知道有几个主题是关于展平列表和数组的。但是我找不到具体问题的答案。我正在尝试获取矩阵与向量的所有可能组合,如下所示:
import numpy as np
from itertools import product
Var1 = np.array([1,2,3])
Var2 = np.array([10,20,30])
Var3 = np.array([100,200,300])
Var4 = np.array([500,1000,1500])
First3Var = [Var1,Var2,Var3]
Combinations = list(product(First3Var, Var4))
这很好用,“组合”几乎就是我想要的。但是,我现在在列表中得到一个数组。我希望它是一个有 4 列的数组,而不是 2 列。有谁知道我如何撤消这个嵌套数组?我希望我的问题很清楚。谢谢!
您可以 [np.append(i,j) for (i,j) in Combinations]
并将其用作列表或 np.array()
。
import numpy as np
from itertools import product
Var1 = np.array([1,2,3])
Var2 = np.array([10,20,30])
Var3 = np.array([100,200,300])
Var4 = np.array([500,1000,1500])
First3Var = [Var1,Var2,Var3]
Combinations = product(First3Var, Var4)
Combinations = np.array([np.append(i,j) for (i,j) in Combinations])
现在 Combinations
是一个 4 列矩阵。
[[ 1 2 3 500]
[ 1 2 3 1000]
[ 1 2 3 1500]
[ 10 20 30 500]
[ 10 20 30 1000]
[ 10 20 30 1500]
[ 100 200 300 500]
[ 100 200 300 1000]
[ 100 200 300 1500]]
我知道有几个主题是关于展平列表和数组的。但是我找不到具体问题的答案。我正在尝试获取矩阵与向量的所有可能组合,如下所示:
import numpy as np
from itertools import product
Var1 = np.array([1,2,3])
Var2 = np.array([10,20,30])
Var3 = np.array([100,200,300])
Var4 = np.array([500,1000,1500])
First3Var = [Var1,Var2,Var3]
Combinations = list(product(First3Var, Var4))
这很好用,“组合”几乎就是我想要的。但是,我现在在列表中得到一个数组。我希望它是一个有 4 列的数组,而不是 2 列。有谁知道我如何撤消这个嵌套数组?我希望我的问题很清楚。谢谢!
您可以 [np.append(i,j) for (i,j) in Combinations]
并将其用作列表或 np.array()
。
import numpy as np
from itertools import product
Var1 = np.array([1,2,3])
Var2 = np.array([10,20,30])
Var3 = np.array([100,200,300])
Var4 = np.array([500,1000,1500])
First3Var = [Var1,Var2,Var3]
Combinations = product(First3Var, Var4)
Combinations = np.array([np.append(i,j) for (i,j) in Combinations])
现在 Combinations
是一个 4 列矩阵。
[[ 1 2 3 500]
[ 1 2 3 1000]
[ 1 2 3 1500]
[ 10 20 30 500]
[ 10 20 30 1000]
[ 10 20 30 1500]
[ 100 200 300 500]
[ 100 200 300 1000]
[ 100 200 300 1500]]