numpy学习笔记03—对数组使用索引查询_weixin
一、基础索引和切片
- import numpy as np
-
- a = np.array([[0,1,2,3,4],
- [5,6,7,8,9],
- [10,11,12,13,14],
- [15,16,17,18,19]])
- print(a)
- print(a[0,0])#0行0列
- print(a[2])#2行所有列
- print(a[0:2,2:4])#取0、1行,2、3列
二、布尔索引
- import numpy as np
-
- a = np.array([[0,1,2,3,4],
- [5,6,7,8,9],
- [10,11,12,13,14],
- [15,16,17,18,19]])
- # 设定筛选规则
- b = a>10
-
- print(b)
- print('*'*30)
- print(a[b])
输出结果:
- import numpy as np
-
- a = np.array([[0,1,2,3,4],
- [5,6,7,8,9],
- [10,11,12,13,14],
- [15,16,17,18,19]])
- # 设定筛选规则
- b = a[:,3]>5
- #打印规则,结果为布尔类型
- print(b)
- print('*'*30)
- # 符合筛选规则的数据加30,注意先定位数据(a[:,3])再执行筛选规则(a[:,3][b])
- a[:,3][b]+=30
- print(a[:,3][b])
三、神奇索引
- import numpy as np
-
- a = np.array([[0,1,2,3,4],
- [5,6,7,8,9],
- [10,11,12,13,14],
- [15,16,17,18,19]])
- # 打印第二、三行
- print(a[[2,3]])
- print('#'*30)
- # 打印第[2,3]、[3,4]个元素
- print(a[[2,3],[3,4]])
推荐阅读