从三个1d数组制作一个3d python数组

时间:2013-10-23 12:18:12

标签: python arrays

我是python中的新手并且有一个基本问题:

我有两个清单:

a = [1, 2, 3]
b = [2, 4, 5]
c = [5, 7, 8]

我想要的是一个类似于:

的数组
x = np.array([1,2,5],[2,4,7],[5,7,8])

是否有一些在线python技巧可以做到这一点?

3 个答案:

答案 0 :(得分:5)

np.vstack((np.array([1,2,3]), np.array([1,2,3]), np.array([1,2,3])))

甚至更简单

np.vstack(([1,2,3], [1,2,3], [1,2,3]))

答案 1 :(得分:2)

尝试zip(a, b, c),例如x = np.array(*zip(a, b, c)) Official Docs

答案 2 :(得分:2)

另一种简单的方法是使用转换矩阵的.T

import numpy as np

a = [1, 2, 3]
b = [2, 4, 5]
c = [5, 7, 8]

np.array([a,b,c]).T

array([[1, 2, 5],
       [2, 4, 7],
       [3, 5, 8]])