1

-inf負の数を与えるnumpy配列の対数のような関数を効率的に書く方法はありますか?

私が望む動作は次のとおりです。

>>> log_inf(exp(1))
1.0

>>> log_inf(0)
-inf

>>> log_inf(-1)
-inf

-inf負の数に対して返されます。

編集:現在、clip負の数を に置き換えるために使用して0いますが、機能しますが、効率的ですか?

4

4 に答える 4

1

別の可能な解決策は次のとおりです。

np.nan_to_num(np.log(data), neginf=0)

または、多くの目的で、Numpy マスク配列を使用するとうまくいく場合があります。

np.ma.log(data)
于 2021-10-19T19:40:19.313 に答える