有没有办法生成一个数组,屏蔽一个矩形区域,而不需要先初始化一个空数组?
mask = np.zeros((10,10), dtype=bool)
mask[10/2:,10/2:] = True
我正在寻找一个 numpy 表达式来替换这两行并生成 mask
最佳答案
如果你真的非常想要一句俏皮话,这是一种可能的方法。但我想说你原来的代码更干净、更清晰、总体更好......
>>> np.logical_and.outer(np.arange(10) >= 5, np.arange(6) >= 3)
array([[False, False, False, False, False, False],
[False, False, False, False, False, False],
[False, False, False, False, False, False],
[False, False, False, False, False, False],
[False, False, False, False, False, False],
[False, False, False, True, True, True],
[False, False, False, True, True, True],
[False, False, False, True, True, True],
[False, False, False, True, True, True],
[False, False, False, True, True, True]], dtype=bool)
关于python - Numpy:创建一个掩码数组来选择矩形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23113407/