java - 将数据导入 R 时如何避免精度损失?

标签 java r

我有一个从我的 Java 代码生成的 CSV 文件,现在想在 R 中使用它。问题是,我的一项属性存在精度问题。

Timestamp 属性在 Java 中保存为 long。将数据导入到 R 时这样

1481653606064
1481653606064
1481653606064
1481653606065
1481653606068
1481653606073
1481653606081
1481653606083

转换为:

1,48165E+12
1,48165E+12
1,48165E+12
1,48165E+12
1,48165E+12
1,48165E+12
1,48165E+12
1,48165E+12

这根本没有用。

我刚刚开始使用 R,所以我不知道如何解决这个可能很简单的问题。我希望你能帮助我。

如果需要任何说明,请发表评论。

最佳答案

不会发生精度损失,您只需以完全精度打印即可。最大 2^53 的整数值完全以数字数据类型存储,并且 2^53 的长度为 15 位(“9,007,199,254,740,992”),而您的数字只有 12 位长度。

> x = 1481653606083
> x
[1] 1.481654e+12
> sprintf("%.f",x)
[1] "1481653606083"

关于java - 将数据导入 R 时如何避免精度损失?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41233450/

相关文章:

java - 设置广播方法

r - 仅绘制 ETS 模型的季节性成分 - R

r - 在代码块中使用 markdown 来定义大型函数

r - 将作为年份的文件名的列名添加到数据框中

r - 使用考试包生成带有图像的 Moodle 练习

java - 两个像素之间的 "Difference in Brightness"

java - 使用 Apache Jena tdbloader 时如何修复 Java 错误 Unsupported major.minor version 52.0

java - 试图让 JFormattedtextfield 改变......不工作

java - JDK 包含 src.zip 但 JRE 不包含

R - 坚持使用 plot() - 根据槽值着色 shapefile 多边形