-2
我有一個numpy.ndarray X.我想在X中找到X> threshold的所有位置,然後執行X =閾值。在Python中查找索引和更改值的最佳方法
要做到這一點,最便宜的方法(就時間複雜性而言)是什麼?我需要運行這個程序數百萬次。謝謝!
我有一個numpy.ndarray X.我想在X中找到X> threshold的所有位置,然後執行X =閾值。在Python中查找索引和更改值的最佳方法
要做到這一點,最便宜的方法(就時間複雜性而言)是什麼?我需要運行這個程序數百萬次。謝謝!
就我所知,您可以使用numpy索引來替換大於某個閾值的所有元素。
雖然,我不確定這是最快的方法。
threshold = 10 # for example
some_array[some_array > threshold] = threshold
嘗試numpy.where:
from numpy import where
Y = where(X> treshold, threshold,X)
其中適用,if語句在ufunc的方式與其中(條件,如果是真的,否則)