【问题标题】:Python three numpy arrays, combine columns [duplicate]Python三个numpy数组,组合列[重复]
【发布时间】:2020-10-16 21:27:59
【问题描述】:

我有三个数组:

a = array([1,2,3,4])
b = array([5,6,7,8])
c = array([9,10,11,12])

我想要一个数组:

result = array([1,5,9],
               [2,6,10],
               [3,7,11],
               [4,8,12])

即取每个数组的第一列并将其作为第一行,依此类推。 我知道这听起来可能微不足道,但一直在摸不着头脑。

【问题讨论】:

  • 除了链接答案中的堆叠外,您还需要转置结果以获得所需的形状。

标签: python arrays numpy


【解决方案1】:

使用 numpy 模块:

import numpy as np

a = np.array([1,2,3,4])
b = np.array([5,6,7,8])
c = np.array([9,10,11,12])

result = np.stack((a,b,c), axis = 1) # axis = 1 transposes the stacked matrix

print(result)

上面的代码给出以下输出:

[[ 1  5  9]
 [ 2  6 10]
 [ 3  7 11]
 [ 4  8 12]]

这是你想要的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-29
    • 1970-01-01
    • 2017-04-15
    • 1970-01-01
    • 2017-05-06
    • 1970-01-01
    • 1970-01-01
    • 2021-11-24
    相关资源
    最近更新 更多