1

0に近いxの値について、Pythonでlog(1+x)/xの値を正しく計算する方法はありますか? np.log1p(x)/x を使用して通常に行うと、1 になります。np.log(x) を使用すると、どういうわけか正しい値が得られるようです。log1p の方が安定していると思われませんか?

4

2 に答える 2

1
np.log1p(1+x)

それはあなたを与えますlog(2+x)。に変更しnp.log1p(x)ます。

于 2016-09-13T19:01:38.993 に答える
0

だから私はこれに対する一つの答えを見つけました。decimal というライブラリを使用しました。

from decimal import Decimal
x = Decimal('1e-13')
xp1 = Decimal(1) + x
print(xp1.ln()/x)

このライブラリは、numpy よりもはるかに安定しているようです。

于 2016-10-05T23:15:18.673 に答える