R 和其他溶胶的 gmp
gmp for R and other sols
实现了 gmp 中算术精度处理问题的解决方案 - 但结果相当奇怪。作为故障排除的一部分,我想知道是否有任何其他软件包允许与 R 中的 gmp 类似的操作。我需要类似 chooseZ 和大于 2^64 的数字乘法的东西 - jsu 以确保我没有我脚本的这一步中某处出错
需要计算像
这样的数字
选择(2450,765)然后将其乘以浮点数,如 0.0034
日志解决方案并没有真正起作用,因为表达式也可以是
(k* k*choose(1800,800)*0.089) 的 2 到 k 的总和
所以我需要一个 wauy 来总结 (k kchoose(1800,800)*0.089)
您可以只使用对数标度:
lchoose(2450,765) + log(0.0034)
#[1] 1511.433
如果你对它取幂,你会得到一个非常大的数字。我根本不相信这个数字在任何实际用途上都会与 Inf
不同,我更不相信你需要它来达到精确度。
编辑:
如果你想计算 \sum_{i=2}^k{i^2 * choose(1800, 800) * 0.089},你应该看到这和 choose(1800, 800) * 是一样的\sum_{i=2}^k{i^2 * 0.089} 然后你可以再次在对数刻度上工作。
实现了 gmp 中算术精度处理问题的解决方案 - 但结果相当奇怪。作为故障排除的一部分,我想知道是否有任何其他软件包允许与 R 中的 gmp 类似的操作。我需要类似 chooseZ 和大于 2^64 的数字乘法的东西 - jsu 以确保我没有我脚本的这一步中某处出错
需要计算像
这样的数字选择(2450,765)然后将其乘以浮点数,如 0.0034
日志解决方案并没有真正起作用,因为表达式也可以是
(k* k*choose(1800,800)*0.089) 的 2 到 k 的总和
所以我需要一个 wauy 来总结 (k kchoose(1800,800)*0.089)
您可以只使用对数标度:
lchoose(2450,765) + log(0.0034)
#[1] 1511.433
如果你对它取幂,你会得到一个非常大的数字。我根本不相信这个数字在任何实际用途上都会与 Inf
不同,我更不相信你需要它来达到精确度。
编辑:
如果你想计算 \sum_{i=2}^k{i^2 * choose(1800, 800) * 0.089},你应该看到这和 choose(1800, 800) * 是一样的\sum_{i=2}^k{i^2 * 0.089} 然后你可以再次在对数刻度上工作。