如何在 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