我有一个带有inf值的矩阵和一个指示要保留哪些值的布尔数组。如何使用布尔数组将原始矩阵(包括inf)中的所有值归零,但使所有inf都对应于Trues
前
X = [inf, 1, inf]
[inf, 2, 4]
[3, 4, 5]
M = [1, 0, 0]
[0, 1, 0]
[0, 1, 0]
(current output)
M * X = [inf, 0, nan]
[nan, 2, 0]
[0, 4, 0]
(desired output)
M * X = [inf, 0, 0]
[0, 2, 0]
[0, 4, 0]
输入:
方法
首先,我们需要反转掩码
M
,然后使用numpy.where
得到索引;通过这些索引,我们可以将原始数组中的元素设置为零,方法如下:p.S.反转掩模不应理解为矩阵反转。应该理解为翻转布尔值(
True
>False
False
>True
)相关问题 更多 >
编程相关推荐