私はnumpy.ndarray Xを持っています。X> thresholdのX内のすべての場所を探して、X = thresholdを実行したいと思います。インデックスを見つけてPythonの値を変更する最も良い方法
これを行うには(時間複雑性の点で)最も安い方法はありますか?私は何百万回もこの手順を実行する必要があります。ありがとう!
私はnumpy.ndarray Xを持っています。X> thresholdのX内のすべての場所を探して、X = thresholdを実行したいと思います。インデックスを見つけてPythonの値を変更する最も良い方法
これを行うには(時間複雑性の点で)最も安い方法はありますか?私は何百万回もこの手順を実行する必要があります。ありがとう!
私が知る限り、何らかのしきい値を超えるすべての要素を置き換えるために、numpyインデックスを使用することができます。
しかし、私はそれが最速の方法であるとは確信していません。
threshold = 10 # for example
some_array[some_array > threshold] = threshold
トライnumpy.where:
ここで、(条件、真の場合、他) でufunc-的に文を適用している場合from numpy import where
Y = where(X> treshold, threshold,X)