问答 · ANSWER
NumPy 多维数组怎么切片和索引?
直接回答
NumPy多维数组通过逗号分隔各维度索引进行切片,支持连续区域选取、条件过滤和转置操作,是数据定位与筛选的基础。
关键要点
- 使用
arr[行切片, 列切片]格式进行多维切片,逗号分隔各维度。 - 一维数组索引与Python列表相同,支持正负索引和范围切片。
- 条件索引用布尔数组作为掩码筛选数据,如
arr[arr > 4]。 - 多条件组合必须用括号和位运算符
&、|,如(arr>4) & (arr%2==0)。 - 转置交换数组行列,可用
.T属性、np.transpose()或np.swapaxes()。 arr[1,2]获取标量值,arr[1:2,2:3]获取形状为(1,1)的子数组。
怎么选 / 怎么做
1. 索引与切片:使用arr[dim1_slice, dim2_slice, ...]格式,逗号分隔维度。
2. 条件索引:创建布尔数组(如arr > 4)作为索引直接筛选。
3. 转置:使用.T属性快速交换二维数组的行列。
常见问题
多维数组切片的基本格式是什么?
使用arr[行切片, 列切片],逗号分隔各维度。
怎么根据条件筛选数组元素?
用布尔数组索引,如arr[arr > 4]筛选大于4的值。
数组转置有哪几种方法?
可用.T属性、np.transpose()或np.swapaxes()函数。