一种在具有0的2D numpy数组中的特定索引之后屏蔽所有值的有效方法

问题描述 投票:0回答:1

我有一个2D数组和一个1D索引数组,如下所示:

a = np.random.rand(2,5)
a
>>> a
    array([[0.70095892, 0.01068342, 0.69875872, 0.95125273, 0.18589609],
   [0.02990893, 0.78341353, 0.12445391, 0.71709479, 0.24082166]])
>>> ind
    array([3, 2])

我希望索引3之后(包括索引3)的第1行中的所有值都变为0,而索引2之后的第2行中的所有值均变为0。所以最终输出为:

array([[0.70095892, 0.01068342, 0.69875872, 0, 0],
   [0.02990893, 0.78341353, 0, 0, 0]])

您能帮我吗?

numpy indexing masking
1个回答
2
投票

您可以通过boolean indexing执行此操作:

boolean indexing
© www.soinside.com 2019 - 2024. All rights reserved.