【发布时间】:2014-08-28 05:27:52
【问题描述】:
我正在使用 python 进行一些统计,我有这个数据集:
test=[0.200,0.220,0.220,0.120,0.330,0.330]
Python 会自动将其转换为 [0.2, 0.22, 0.22, 0.12, 0.33, 0.33] 但实际上零在我的计算中是有效数字,所以我想将它们保留在数组中。 我知道我可以导入小数并将 Decimal 用于单个值,但是如何将所有尾随零保留在列表或 np.array 中?
认为您正在使用 python 脚本插入实验数据,数据直到第三个数字都是精确的,所以我想跟踪 0.020 意味着第三个数字实际上是 0。我怎样才能完成这个任务?对于化学家或工程师来说,这是一个非常重要的问题。
我需要它,因为我必须跟踪有效数字以进行下一次计算...理想情况下,我必须计算这种情况下有效数字的数量 3 并在下一次计算中使用它,这是一种直方图用与有效数字数相关的 bin 宽度进行绘图。
【问题讨论】:
-
你要计算什么?
-
0.200和0.2之间没有区别。如果您关心这些零,请使用小数或字符串。 -
在内部,这些数字将由浮点数表示。您所看到的只是该数字的表示。如果您需要精确的表示,您应该使用 gmp 库。
-
@poke 这不是计算结果的差异问题,而是为我存储信息的问题对于保留有效数字的原始数量很重要。感谢您的帮助!
标签: python arrays numpy rounding trailing