在 R 中获得 0 而不是精确的结果

mol*_*oli 3 r computation

我怎样才能得到实际的精确结果而不是四舍五入的结果?

result = ((0.61)**(10435)*(0.39)**(6565))/((0.63)**(5023)*(0.60)**(5412)*(0.37)**(2977)*(0.40)**(3588))
Run Code Online (Sandbox Code Playgroud)

出去:

NaN
Run Code Online (Sandbox Code Playgroud)

因为,分母是0

Tho*_*ing 6

我认为对数是一个强大的工具来处理指数与大幂(见https://mathworld.wolfram.com/Logarithm.html 中的属性)

您可以尝试先使用log您的数学表达式,然后依次应用exp,即,

result <- exp((10435*log(0.61)+6565*log(0.39)) - (5023*log(0.63)+5412*log(0.60)+ 2977*log(0.37)+3588*log(0.40)))
Run Code Online (Sandbox Code Playgroud)

这使

> result
[1] 0.001219116
Run Code Online (Sandbox Code Playgroud)