【发布时间】:2015-06-01 12:03:59
【问题描述】:
长整数值用 E 表示,
7.448495e+10 6.757505e+10 7.44955e+14
如何去掉 E 以便我看到整个数字??
【问题讨论】:
标签: r
长整数值用 E 表示,
7.448495e+10 6.757505e+10 7.44955e+14
如何去掉 E 以便我看到整个数字??
【问题讨论】:
标签: r
正如@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)?
【讨论】:
其他几个选项...
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 库)实现。
【讨论】:
对于您作为示例给出的整数长度,R 只是很好地读取它们,整数就在那里,它只是不会完全使用默认值打印。 要查看整数,请使用打印函数中的数字参数。 例如:
x <- 744955224482948
x
[1] 7.449552e+14
print(x,digits=14)
[1] 744955224482948
【讨论】: