python - numpy数组的逻辑索引
问题描述
在 Maltab 中,逻辑索引可以按如下方式完成。给定两个二值图像掩码A
和B
:
C = A(B)
给定两个 numpy 数组A
和B
bool 类型,有什么简单的方法可以在 Python 中执行相同的操作吗?
解决方案
假设我们有一个数组并且想要找到大于 50 的值。
代码:
import numpy as np
array = np.array([80, 35, 50, 70])
greater_then_50 = array[array > 50]
print(greater_then_50)
# output:
array([80, 70])
这是 numpy 中的一个示例布尔索引。
每次对 numpy 数组进行布尔运算时,它都会返回一个具有 True 和 False 的布尔数组,当我们将此布尔数组作为掩码传递给另一个数组时,它只会返回布尔数组中具有 True 的位置。
推荐阅读
- vb.net - 将结构保存到二进制文件
- android - 从 dialogfragment 调用片段方法
- java - 无法理解用于连接读取 svg 文件的 URL
- node.js - 如何在 erlang 应用程序和 nodejs 服务器之间建立通信?
- android - TextView更改文本第一次单击不起作用
- windows - Windows 服务器上的 Docker 和多个网站监听端口 80 和 443
- python - 带有 ColumnTransformer 的 SKLearn 管道:'numpy.ndarray' 对象没有属性'lower'
- mysql - 如何在 Django RF 项目中使用 UUID 作为主键来保留原始 ID?
- azure - 如何避免 .Net Core 上 Azure 表存储/Cosmos DB 表 API 的启动延迟
- docker - 是否可以直接从 ACR 运行 docker 映像