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

如何对Numpy中的4维数组进行切片以提取指定目标数组?

解法说明

首先明确4维数组d1的4个轴索引从左到右依次为轴0、轴1、轴2、轴3,对应shape参数(2,2,2,4)的四个数值。
我们先定位两个目标行的位置:

  • 第一行[13 14]的位置:轴0取0(第一组大数组)、轴1取1(第二组中数组)、轴2取1(第二组小数组)、轴3取1到3(左闭右开,对应索引1、2的元素),单组索引写法为d1[0,1,1,1:3]
  • 第二行[17 18]的位置:轴0取1(第二组大数组)、轴1取0(第一组中数组)、轴2取0(第一组小数组)、轴3取1到3,单组索引写法为d1[1,0,0,1:3]

要一次性得到组合后的二维数组,用numpy的整数数组索引即可,完整代码如下:

import numpy as np
d = np.arange(32)
d1 = d.reshape(2,2,2,4)
result = d1[[0,1], [1,0], [1,0], 1:3]
print(result)

运行输出结果完全符合需求:

[[13 14]
 [17 18]]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 17:57:05