我正在尝试读取第一列中包含条形码的CSV文件,但是当R将其转换为data.frame时,它将转换1665535004661为1.67E+12.
有没有办法以整数格式保存这个数字?我尝试分配一类"double",但是没有用,也没有分配一类"character".一旦它处于1.67E+12格式,任何将其转换回整数的尝试都会返回167000000000.
我在xls文件中有一些13位数字,并且我使用Excel生成了csv文件,因为我需要在R中对其进行处理。然后,当R读取csv文件时,它无法识别大数字。例如,1329100082670在R中看起来像1.329E + 12,并且失去了精度。我试图将大数字格式化为Excel中的文本格式,然后将其另存为csv,但这没有用!
提前致谢!
R可以准确表示多少位数字?基于问题的答案在这里,并在这里和文档,我希望R键好得多做的比我在下面的迷你例子(精度击穿后16位数字):
log(.Machine$double.xmax, 10)
# 308.2547
for (i in 1:30) {
a <- rep(1, i) # make a vector of 1s
b <- paste(a, collapse = '') # turn into string
d <- as.double(b) # turn into double
e <- format(d, scientific = FALSE) # turn into string
print(e)
}
# "1"
# "11"
# "111"
# "1111"
# "11111"
# "111111"
# "1111111"
# "11111111"
# "111111111"
# "1111111111"
# "11111111111"
# "111111111111"
# …Run Code Online (Sandbox Code Playgroud)