You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将三个NumPy数组合并为目标列结构的二维数组?

如何将三个一维NumPy数组合并为指定列结构的二维数组?

现有三个一维数组:

x = [63.001359127617185, 21.02926724707507, -64.99968875087593, 65.00084778093242, 34.00056603763737]
y = [-35.998640872382815, 5.029267247075071, -23.99968875087593, -78.99915221906758, -98.99943396236263]
z = [0.002285667282364421, 0.060360611442703896, 0.0008887456442498822, 0.007301422400429866, 0.004970329828018857]

想要合并成如下结构的二维数组:

array([[63.001359127617185,  -35.998640872382815,  0.002285667282364421],
       [21.02926724707507,  5.029267247075071,   0.060360611442703896],
       [-64.99968875087593, -23.99968875087593, 0.0008887456442498822],
       [65.00084778093242,  -78.99915221906758,  0.007301422400429866],
       [34.00056603763737,  -98.99943396236263,   0.004970329828018857]])

用np.array([x,y,z])得到的是行排列结果,这里提供几种简单实现方式:

  • 方法一:转置已有数组
    先按行合并,再通过.T转置得到目标结构:

    import numpy as np
    np_arr = np.array([x, y, z]).T
    
  • 方法二:使用np.column_stack
    该函数专门用于将一维数组按列合并为二维数组,一步到位:

    import numpy as np
    np_arr = np.column_stack((x, y, z))
    
  • 方法三:np.vstack结合转置
    先垂直堆叠成行结构,再转置得到列合并结果:

    import numpy as np
    np_arr = np.vstack([x, y, z]).T
    

以上三种方法都能得到你需要的结构,其中np.column_stack最贴合列合并的需求。

内容的提问来源于stack exchange,提问作者Starwinwin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 16:22:57