在NumPy中,有几种常见的数组索引方式:
索引单个元素:可以使用方括号 []
来索引单个元素,指定元素的位置。例如,对于一个二维数组 arr
,可以使用 arr[row_index, column_index]
来获取指定位置的元素。
切片索引:使用切片操作 :
可以获取数组的一个子集。切片操作可以用于一维和多维数组,以及不同轴向上的切片。例如,对于一个一维数组 arr
,可以使用 arr[start:end:step]
来获取从 start
到 end-1
的元素,步长为 step
。对于一个二维数组 arr
,可以使用 arr[start1:end1:step1, start2:end2:step2]
来获取行范围为 start1:end1-1
,列范围为 start2:end2-1
的子集。
整数数组索引:可以使用一个整数数组来索引数组的元素。整数数组的每个元素表示要获取的元素在对应轴上的位置。例如,对于一个一维数组 arr
,可以使用一个整数数组 idx
来获取 arr[idx]
中的元素。对于一个二维数组 arr
,可以使用两个整数数组 idx1
和 idx2
来获取 arr[idx1, idx2]
中的元素。
布尔数组索引:可以使用一个布尔数组来索引数组的元素。布尔数组的每个元素表示对应位置上的元素是否被选中。例如,对于一个一维数组 arr
,可以使用一个布尔数组 mask
来获取 arr[mask]
中为 True
的元素。对于一个二维数组 arr
,可以使用一个布尔数组 mask
来获取 arr[mask]
中为 True
的元素。
这些索引方式可以组合使用,以满足不同的需求。