【发布时间】:2021-09-10 05:59:21
【问题描述】:
在三维 numpy 数组上构建布尔掩码时遇到问题。 数组可以想象如下,例如形状为 (18,2,7) 的数组,其中包含随机数:
import random
import numpy as np
a = np.array([[[random.random() for i in range(7)] for j in range(2)] for k in range(18)])
还有一个形状为 (18,2,1) 的预定义布尔掩码
x = np.zeros((18,2,1), dtype="bool")
重要提示:我无法在此处更改变量定义,必须使用此形状。
我想遍历 a 并创建一个 x 掩码,如果 a 中的值小于 0.5,则为 True。
这是我目前的尝试:
我也尝试将元素直接添加到数组中,但出现广播错误。有没有办法让数组“自动”扩展创建我需要的地图?
任何帮助将不胜感激。
【问题讨论】:
标签: python arrays numpy mask array-broadcasting