可以高效地实现验证 Numpy 数组是否包含特定行无需迭代整个数组。在处理大型数据集时,这种优化变得尤其重要。
1.使用 .tolist()
将 Numpy 数组转换为列表,以进行 Python 式的直接比较。
2.使用视图
创建数组的视图以有效地执行逐元素比较。
3.在数组上生成
在 Numpy 数组上生成,将每一行与目标行进行比较。请注意,对于大型数组,此方法可能会很慢。
4.使用 Numpy 逻辑函数
利用 Numpy 的逻辑函数(例如 np.equal)来执行高效的逐元素比较。
虽然每种方法根据数组的大小和搜索模式而有所不同, np.equal 往往是最快的纯 Numpy 选项。对于早期命中,Python in 运算符可能会稍微快一些。生成器方法在搜索数组的大部分时表现不佳。
以下是基准比较的结果:
Method | Time (seconds) | Accuracy |
---|---|---|
View | 0.1 | True |
Python List | 0.3 | True |
Generator | 3.2 | True |
Logic Equal | 0.1 | True |
以上是如何高效地检查 Numpy 数组中的特定行?的详细内容。更多信息请关注PHP中文网其他相关文章!