创建Ndarray,每行有两列

时间:2018-03-12 23:45:36

标签: python arrays numpy matrix

我想创建一个包含n行和两列的nd数组

我想从其他两个列表中填充列的值,例如:

target_array = []

for i in range(9):
   target_array[i][0] = list_a[i]
   target_array[i][1] = list_b[i]

但这不起作用,你知道如何做类似的事吗?

1 个答案:

答案 0 :(得分:1)

In [363]: list_a = list(range(1,10))
In [364]: list_b = list(range(9,0,-1))

您可以通过向其附加值来构建新列表,例如:

In [365]: target = []
In [366]: for i in range(9):
     ...:     target.append([list_a[i],list_b[i]])
     ...:     
In [367]: target
Out[367]: [[1, 9], [2, 8], [3, 7], [4, 6], [5, 5], [6, 4], [7, 3], [8, 2], [9, 1]]

如果您需要一个数组而不是列表,只需从列表中创建它:

In [368]: np.array(target)
Out[368]: 
array([[1, 9],
       [2, 8],
       [3, 7],
       [4, 6],
       [5, 5],
       [6, 4],
       [7, 3],
       [8, 2],
       [9, 1]])