问题标签 [bigfloat]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
589 浏览

python - Bigfloat - 精度错误

我正在尝试在 python 2.7 中使用 Bigfloat 库。

Python给了我f1=0,但事实并非如此。我用 g++ 测试了它,结果是1.75e-46.

这是我的程序中的错误吗?不能用 Bigfloat 计算这个精度吗?这是lib中的错误吗?

0 投票
0 回答
234 浏览

python - Python:熊猫和 BigFloat

我有一个带有 float64 数据类型列的熊猫数据框。

我想将浮点精度提高到 200。我知道您可以使用 BigFloat 库来做到这一点。

我不确定提高熊猫浮点数精度的最佳方法是什么。

0 投票
1 回答
392 浏览

python - 未找到符号:_mpfr_acos,预期在:平面命名空间

我正在尝试运行一个包含多个包的 Python 脚本。我不断得到的错误涉及 mpfr.so 文件(MPFR 模块)。以下是整封邮件的内容:

我一直在尝试重新安装软件包并且无法解决它。

0 投票
1 回答
600 浏览

python - trigamma and digamma functions for bigfloat variable in python

I need to compute the scipy.special trigamma and digamma functions of a variable with type bigfloat in python but I get the following error message:

I need to keep my variables as bigfloat for precision purposes. Does any body know how I can compute digamma and trigamma functions for such variables? Thanks.

0 投票
1 回答
972 浏览

python - 在python中将类型从BigFloat转换为Float

我在 python 中使用 BigFloat 库计算 exp。但随后我必须计算 BigFloats 矩阵的逆矩阵。我使用函数numpy.linalg.inv,但出现以下错误:

没有为 ufunc inv 找到与指定签名和强制转换匹配的循环

所以我想说我需要将 BigFloat 转换为其他类型。我该怎么做?

0 投票
1 回答
378 浏览

python - 在 Mac OS X 上安装 big float

我正在尝试在 OS X 上安装 big float,但遇到了多个问题。我已经安装了 amp 没有任何问题,但是当我尝试安装 mpfr 时出现此错误:

这是什么意思?(我正在使用自制软件)。

然后,显然,如果我尝试安装 bigfloat 它不起作用,我得到这个错误:

0 投票
1 回答
956 浏览

python - 来自 BigFloats 数组的 Python Numpy 指数值

我正在尝试计算指数的自然对数加上数组的中位数,但浮点数的精度必须为 2000,否则答案将始终为 0。

这是我到目前为止所拥有的:

此代码返回以下错误,因为BigFloat.exp不适用于列表类型。

然后我尝试使用列表理解来构建精度 = 2000 的指数,但输出会失去精度。

x我可以使用这样的列表理解精确地获得指数值:

那么,如何添加np.median(x)到指数数组中的每个项目以及如何获取最终数组中元素的日志?有没有更简单的方法来计算answer上面第一个代码片段中变量给出的方程?

我基本上是在尝试将此 R 代码转换为 Python:

0 投票
1 回答
2490 浏览

julia - 有没有办法阻止 Julia 使用 BigFloats 的科学(指数)表示法?

好吧,从表面上看,我有一个简单的问题。我想将无理数的小数部分取到指定的位数并将其视为整数。例如,如果我的无理数是 2.657829...并且我想要五位数,我正在寻找 65782(尽管我实际上正在处理“大”数字)。

这很容易使用字符串来实现,例如,如果我想要根 3 到 50 位的小数部分:

输出是73205080756887729352744634150587236694280525381038

但是,当我只处理数字时,我讨厌使用字符串!我想要做的是从 BigFloat 开始,减去整数部分,将结果乘以适当的 10 因子,将结果四舍五入为零,然后将其转换为 BigInt。问题是 Julia 使用科学/指数表示法,所以我似乎无法仅使用数字来实现我想要的。以下(部分)代码显示了问题:

这种情况下的输出是7.32050807568877293527446341505872366942805253810380625e+49(在舍入阶段会删除一些额外的数字)。

所以我的问题是,有没有什么方法可以在不诉诸字符串的情况下实现我的目标?

0 投票
1 回答
950 浏览

scipy - 将 Autograd ArrayBox 转换为 BigFloat

正如标题中所说,我想从 Autograd ArrayBox 转换为 BigFloat。

我的功能很简单:

我需要高精度,因此我想使用bigfloat包。现在,这个函数是一个更复杂的函数的一部分,我正在使用scipy.optimize.minimize函数来找到函数的最小值,同时也autograd用于逼近雅可比矩阵和黑森矩阵。我运行代码时遇到的错误是

所以我的问题是:如何从 Autograd 的 ArrayBox 转换为 BigFloat?如何正确提取 ArrayBox 内的值?

0 投票
1 回答
2322 浏览

go - Golang big.Float 的精度问题

我遇到了一些有趣的 Golang big.Float 计算问题。

问题是

10001000100010001000100010001000100010001000100015.5533 / 1000000000000000000

= 10001000100010001000100010001000.1000100010001000155533

However, big.Float gave "10001000100010001000100010001000.10001000100010001555329999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999997"

编码:

结果:

更令人困惑的是,如果我设置 prec = 512,更小的精度,它会产生正确的结果。

有人知道我的代码有什么问题或如何配置 big.Float 以获得预期结果吗?

谢谢大家!