Zan*_*der 1 r nan arbitrary-precision
我已经尝试过1e-324在R中基本上是零.所以,当我想做这样的计算时我该怎么办:
1e-2000/1e-2000
#[1] NaN
#But the real value should be 1
Run Code Online (Sandbox Code Playgroud)
所以,任何帮助表示赞赏.
你需要任意精度算术.看看gmp:
library(gmp)
divide_by_zero <- function(n) {10^n / 10^n}
divide_by_nonzero <- function(n) {pow.bigz(10, n) / pow.bigz(10, n)}
divide_by_zero(-320:-330)
# [1] 1 1 1 1 NaN NaN NaN NaN NaN NaN NaN
divide_by_nonzero(-320:-330)
#Big Rational ('bigq') object of length 11:
# [1] 1 1 1 1 1 1 1 1 1 1 1
Run Code Online (Sandbox Code Playgroud)