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

如何更简便合并同长度Numpy (N,1)列数组为(N,2)数组?

更简洁的Numpy数组水平拼接方法

假设你有两个形状为(N,1)的Numpy列数组:

>>> a
array([[0.],
       [2.],
       [4.],
       [6.]])
>>> b
array([[0.],
       [1.],
       [2.],
       [3.]])

你希望将它们拼接成形状为(N,2)的数组,以下几种方法比你当前的实现更直接简洁:

  • 使用np.hstack():专门用于水平堆叠数组,直接传入数组列表即可
>>> np.hstack((a, b))
array([[0., 0.],
       [2., 1.],
       [4., 2.],
       [6., 3.]])
  • 使用np.concatenate():通过指定axis=1实现水平拼接
>>> np.concatenate((a, b), axis=1)
array([[0., 0.],
       [2., 1.],
       [4., 2.],
       [6., 3.]])
  • 使用np.column_stack():专为将一维数组/列数组拼接成二维数组设计,用法更直观
>>> np.column_stack((a, b))
array([[0., 0.],
       [2., 1.],
       [4., 2.],
       [6., 3.]])

以上三种方法都能一步到位实现需求,无需额外的reshape和transpose操作,代码可读性更强。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 02:35:19