Numpy切片操作分为两类
- 不带逗号
a[start:stop:step]
start:索引起始位置,省略则默认从头开始索引;
stop:索引结束位置(不包含该结束索引),省略则默认索引到结尾;
step:索引步长,省略则默认步长为1。
- 带逗号
带逗号针对二维及以上数组,当切片操作中加入了逗号","后,即可以提取数据的列。逗号前为行操作,逗号后为列操作。
举例如下:
import numpy
x = numpy.array(
[[ 1, 2, 3, 4],
[ 5,6,7,8],
[ 9,10,11,12],
[13,14,15,16]])
提取索引为2的列
y=x[-1,:2]
y
-1为逆向索引,因为最后一行不能是-0,所以-1对应最后一行。提取最后一行和初列至第二列
y = x[0:2, 0:2]
y
提取第0行到第2行,第0列至第2列(不含第2列)
y = x[[0, 1, 2], [0, 1, 2]]
y
提取行索引为0,1,2,列索引为0,1,2的元素。