长整数值用E,
表示 7.448495e+10 6.757505e+10 7.44955e+14
如何摆脱E以便我看到整个数字?
答案 0 :(得分:5)
对于你给出的整数长度,例如,R只是读得很好,整数就在那里,它只是不会完全使用默认值打印。 要查看整数,请使用print函数中的digits参数。 e.g:
x <- 744955224482948
x
[1] 7.449552e+14
print(x,digits=14)
[1] 744955224482948
答案 1 :(得分:3)
正如@jebsel所说,您可以使用带有数字参数的print
来显示您的号码。但是,如果您希望自动显示这样的数字,您可以在选项中更改scipen参数:
x <- 744955224482948
x
#[1] 7.449552e+14
options(scipen=30)
x
#[1] 744955224482948
options(scipen=30)
表示科学记数法版本需要比“普通”版本短30个字符以上才能成为所选择的显示方法。这个重复的问题也讨论过:Force R not to use exponential notation (e.g. e+10)?
答案 2 :(得分:3)
其他两个选项......
x <- 744955224482948
## use a 64-bit integer
bit64::as.integer64(x)
# integer64
# [1] 744955224482948
## format without scientific notation
format(x, scientific = FALSE)
# [1] "744955224482948"
## encodeString() does the same thing in this case
encodeString(x)
# [1] "744955224482948"
另请注意?print.default
大量数字
请注意,对于较大的数字值,当前对于数字> = 16,有效位数的计算将取决于平台的sprintf()功能的内部(C库)实现。