提问人:Michele Antonazzi 提问时间:7/27/2023 最后编辑:jaredMichele Antonazzi 更新时间:7/27/2023 访问量:17
Numpy:如何创建具有左右范围行限制的 2D 矩阵的蒙版 (0, 1)?
Numpy: how to create a mask (0, 1) of a 2D matrix having left and right limits of reach row?
问:
我正在尝试生成一个掩码矩阵,其中每行都有独立的切片。从 0 矩阵开始,我想在每行的不同切片处放置一个 1。我找到的唯一解决方案是使用循环遍历切片列表并将其应用于相应的行。这可以在没有循环的情况下完成吗?for
for
请参阅以下示例:
mask = np.zeros((3, 3))
slices = [
[0, 2], # row 0, from [0:2] = 1
[1, 3], # row 1, from [1:3] = 1
[0, 1] # row 2, from [0:1] = 1
]
for row, (x0, x1) in enumerate(slices):
mask[row, x0:x1] = 1
我想在不迭代切片的情况下获得以下掩码
[[1, 1, 0],
[0, 1, 1],
[1, 0, 0]]
答: 暂无答案
评论