1

我是 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技巧可以做到这一点吗?

4

3 回答 3

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]))
于 2013-10-23T12:22:14.177 回答
4

另一种简单的方法是使用.Twhich 转置矩阵。

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]])
于 2013-10-23T13:04:54.697 回答
2

尝试zip(a, b, c),例如,x = np.array(*zip(a, b, c)) 官方文档

于 2013-10-23T12:20:27.547 回答