📂 目录
- 高级索引简介
- 布尔索引
- 整数数组索引
- 花式索引与切片
- 出站链接
- 参考资料
🎯 高级索引简介
NumPy 提供了几种高级索引方法,用于根据更复杂的条件选取数组中的元素。这些方法通常更灵活,能够处理多维数组以及更复杂的查询需求。
🔍 布尔索引
布尔索引允许你根据条件筛选数组的元素,返回符合条件的元素:
import numpy as np
a = np.array([10, 20, 30, 40, 50])
mask = a > 30 # 条件:选择大于 30 的元素
print(a[mask]) # 输出:[40 50]
布尔索引是数组筛选中非常强大的工具,尤其当你需要动态的筛选时。
🔢 整数数组索引
整数数组索引允许你通过索引列表或数组选择数组的多个元素:
a = np.array([10, 20, 30, 40, 50])
indices = [0, 2, 4]
print(a[indices]) # 输出:[10 30 50]
这种方法不仅可以用于一维数组,也可以用于多维数组:
b = np.array([[1, 2], [3, 4], [5, 6]])
indices = [0, 2]
print(b[indices]) # 输出:[ [1, 2], [5, 6] ]
🌟 花式索引与切片
花式索引允许你通过传递非连续的索引列表来选择数组中的元素。与切片不同,花式索引会返回数组的副本,而不是视图:
a = np.array([10, 20, 30, 40, 50])
print(a[[0, 3]]) # 输出:[10 40]
与此相似,你也可以结合切片进行复杂的索引操作:
b = np.array([[1, 2], [3, 4], [5, 6]])
print(b[[0, 2], 1]) # 输出:[2 6],选择第 0 和 2 行的第二列
🔗 出站链接
📚 参考资料
- NumPy 官方文档
- W3Schools Python NumPy 教程
- GeeksForGeeks 深度讲解
- 来自:www.52kanjuqing.com
发表回复