我想合并两个列表。 list1
是一个列表或数组,如下所示:
list1 = [np.array([14, 17, 17, 8]), np.array([ 7, 7, 19, 16]), np.array([ 9, 18, 2, 19])]
list2
是另一个列表,例如:
list2 = [np.array([909]), np.array([909]), np.array([998])]
我想用 new_list
将两个列表连接成一个 new_list = [list1, list2]
,但它没有给我我正在寻找的结果。我想生成一个新矩阵,例如:
new_list = list1 |清单 2
14 17 17 8 909
7 7 19 16 990
9 18 2 19 998
答案 0 :(得分:2)
这应该有效:
list3 = np.concatenate((list1, list2), axis=1)
# array([[ 14, 17, 17, 8, 909],
# [ 7, 7, 19, 16, 909],
# [ 9, 18, 2, 19, 998]])
请注意,标准 +
不会像对 vanilla python 列表那样对 numpy 数组进行连接。如果你有普通的 list
s 而不是 numpy 数组,那么你可以这样做:
list3 = [a1 + b1 for (a1, b1) in zip(list1, list2)]
但是如果你在一个 numpy 数组上尝试这个,它会做标量加法而不是串联。