1、采用下标索引
#2021.10.23 HIT ATCI lzh
#Numpy基础知识,数组的索引
import numpy as np
x = np.arange(11)#起始值默认为0,step 默认为1
print(x)
a = x[0: 6: 2]#从0开始索引,间隔为2,索引值不包括下标6
print(a)
输出为
[ 0 1 2 3 4 5 6 7 8 9 10]
[0 2 4]
2、创建切片索引
先用slice创建切片,然后索引
import numpy as np
x = np.arange(11)#起始值默认为0,step 默认为1
print(x)
#切片索引
s = slice(1,7,2)# 从索引 1 开始到索引 7 停止,间隔为2
print(x[s])
输出:[1 3 5]
x = np.arange(11)#起始值默认为0,step 默认为1
print(x)
print(x[1:])#从索引1开始往后的项都被提取
print(x[:4])#从起始项提取到索引项,不包括停止索引项
print(x[2: 5])#不包括停止索引项
分别输出
[ 0 1 2 3 4 5 6 7 8 9 10]
[ 1 2 3 4 5 6 7 8 9 10]
[0 1 2 3]
[2 3 4]
3、采用 ...索引取某些行或列
a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(a)
print(a[..., 1])#输出第二列
print(a[0, ...])#输出第二行
print(a[...,1:])
输出:
[2 5 8]
[1 2 3]
[[2 3]
[5 6]
[8 9]]
其中,print(a[...,1:])输出第二列及剩下的所有列