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

如何高效移除numpy.ndarray中间层括号 无需循环实现维度压缩

numpy数组移除中间维度无循环实现方案

你当前的输入为形状(2, 6, 2)的三维字符串数组,要得到(12, 2)的二维数组,可直接使用numpy内置方法实现,全程无显式循环,底层由C实现执行效率远高于手写循环:

  • 方法1:使用reshape直接调整维度(最简便,性能最优)
    reshape不会修改数组底层数据,仅调整数组的维度描述,性能开销几乎为0:
# arr为你的原始三维数组
new_arr = arr.reshape(-1, 2)
  • 方法2:使用concatenate沿第0轴拼接
    适合后续需要灵活调整拼接轴的场景:
new_arr = np.concatenate(arr, axis=0)
  • 方法3:使用vstack垂直堆叠子数组
    语义更清晰,直接合并最外层维度下的所有子数组:
new_arr = np.vstack(arr)

以上三种方法输出的数组结构完全符合你给出的预期结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 06:24:03