You need to enable JavaScript to run this app. 如何复制3维numpy数组的最后一列并追加到数组末尾
优惠活动
大模型
产品
解决方案
定价
更多

如何复制3维numpy数组的最后一列并追加到数组末尾

高效实现方案

直接用numpy原生的拼接方法就能完成,代码简洁,而且底层是C实现,处理大数组时性能也足够好:

import numpy as np

# 初始化原数组
arr = np.array([[[ 7, 5, 93],
                 [19, 4, 69],
                 [62, 2, 52]],
                [[ 6, 1, 65],
                 [41, 9, 94],
                 [39, 4, 49]]])

# 核心拼接逻辑
result = np.concatenate([arr, arr[..., -1:]], axis=-1)

代码说明

  • 用arr[..., -1:]提取最后一维的最后一列:这里的...会自动匹配前面所有维度,-1:而非直接写-1是为了保留第三维的维度结构,避免降维导致无法拼接
  • axis=-1指定在最后一维进行拼接,符合追加列的需求

如果习惯用更简短的写法,也可以用np.append实现,效果完全一致,内部实际也是调用concatenate:

result = np.append(arr, arr[..., -1:], axis=-1)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.12 13:12:04