如何在 R 中停止打印大数字的科学计数法?
当我们在 R 中编写一个长数字时,默认情况下该数字的打印输出将以科学计数法表示。为了停止这种打印行为,我们可以使用 sprintf 函数。
例如,如果我们有一个名为 df 的数据框,其中包含一个名为 X 的列,其中包含长数字,那么我们可以使用以下命令停止以科学计数法打印这些数字:
df$X<-sprintf("%f",df$X)示例 1
以下代码片段创建一个示例数据框:
x<-rpois(20,100000000000000) df1<-data.frame(x) df1
输出
创建了以下数据框:
x 1 NA 2 NA 3 NA 4 NA 5 NA 6 NA 7 NA 8 NA 9 NA 10 NA 11 NA 12 NA 13 NA 14 NA 15 NA 16 NA 17 NA 18 NA 19 NA 20 NA
要打印包含所有数字的 x 的值,请将以下代码添加到上述代码片段中:
df1$x<-sprintf("%f",df1$x)
df1输出
如果您将以上所有代码作为单个程序执行,则会生成以下输出:
x 1 100000002878004.000000 2 100000006073034.000000 3 100000015081157.000000 4 99999991070780.000000 5 100000001649055.000000 6 100000008293503.000000 7 100000002065917.000000 8 100000001116032.000000 9 99999995600778.000000 10 100000003840096.000000 11 99999989811240.000000 12 99999993682758.000000 13 99999987127237.000000 14 100000004413443.000000 15 99999997385728.000000 16 100000004964710.000000 17 99999987378461.000000 18 100000013440743.000000 19 100000005847206.000000 20 100000019558343.000000
示例 2
以下代码片段创建一个示例数据框:
y<-rpois(20,123574125541235) df2<-data.frame(y) df2
输出
创建了以下数据框:
y 1 NA 2 NA 3 NA 4 NA 5 NA 6 NA 7 NA 8 NA 9 NA 10 NA 11 NA 12 NA 13 NA 14 NA 15 NA 16 NA 17 NA 18 NA 19 NA 20 NA
要打印包含所有数字的 y 的值,请将以下代码添加到上述代码片段中:
df2$y<-sprintf("%f",df2$y)
df2输出
如果您将以上所有代码作为单个程序执行,则会生成以下输出:
y 1 123574119946324.000000 2 123574123392734.000000 3 123574141533986.000000 4 123574126127884.000000 5 123574127737879.000000 6 123574117603698.000000 7 123574125442109.000000 8 123574128811340.000000 9 123574111352873.000000 10 123574117712696.000000 11 123574129555656.000000 12 123574123416637.000000 13 123574129492703.000000 14 123574127602845.000000 15 123574147713179.000000 16 123574133125007.000000 17 123574131515857.000000 18 123574128446719.000000 19 123574116541207.000000 20 123574133423019.000000
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP