【问题标题】:How do I manipulate elements in a numpy array with a boolean array?如何使用布尔数组操作 numpy 数组中的元素?
【发布时间】:2023-01-20 23:46:12
【问题描述】:

例如,如果我有

true_false = np.array([[True, False], [True, False]])
to_change = np.array([[10, 10], [10, 10]])

我想将 to_changetrue_false 数组中为 True 的值乘以 20,如果不遍历 to_change,我将如何做到这一点?

我尝试通过遍历 to_change 然后索引 true_false 来做到这一点,但我想在没有迭代的情况下更快地做到这一点。

【问题讨论】:

    标签: python numpy


    【解决方案1】:

    只需使用boolean indexing

    to_change[true_false] *= 20
    

    更新to_change

    array([[200,  10],
           [200,  10]])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-09-02
      • 2013-11-27
      • 2014-10-20
      • 2015-01-07
      • 1970-01-01
      • 2017-02-17
      • 2019-12-27
      相关资源
      最近更新 更多