合并2个数组垂直于元组Numpy

时间:2016-01-29 18:49:20

标签: python numpy

这可能很容易,但我似乎无法自己解决这个问题。我有两个numpy数组,一个代表x值,另一个代表相应的y值:

x = np.array([-1, 0, 1, 2])
y = np.array([-2, -1, 0, 1])

有没有办法将这两个数组合并在一起(因此更容易读取每个x值的y值),如tupple:

array = [(-1, -2), (0, -1), (1, 0), (2, 1)]

提前致谢!

1 个答案:

答案 0 :(得分:27)

In [469]: x = np.array([-1, 0, 1, 2])
In [470]: y = np.array([-2, -1, 0, 1])

将它们加入到2d数组中:

In [471]: np.array((x,y))
Out[471]: 
array([[-1,  0,  1,  2],
       [-2, -1,  0,  1]])

转置该数组:

In [472]: np.array((x,y)).T
Out[472]: 
array([[-1, -2],
       [ 0, -1],
       [ 1,  0],
       [ 2,  1]])

或使用标准的Python zip - 这将数组视为列表

In [474]: zip(x,y)   # list(zip in py3
Out[474]: [(-1, -2), (0, -1), (1, 0), (2, 1)]