Rのコンソール出力の数字の表示桁数の設定
ほとんど設定したことがないのですが、稀に聞かれる気がするので、Rのコンソール出力の数字の表示桁数に関するオプションの説明を書いておきたいと思います。
すぐsprintf
関数をつかうのは、きっとbad
practiceです。
1 小数点以下の表示桁数
デフォルトの小数点以下の桁数は6です1。
pi
[1] 3.14159
options(digits=n)
(n∈ℕ)で変更できます。
options(digits=3)
pi
[1] 3.14
options(digits=10)
pi
[1] 3.141592654
1.1
format(x, digits=n)
でも指定できる
グローバルな設定に左右されたくない関数内などでは、options
を変えるよりはformat
関数を使う方がよいでしょう。
options(digits=1)
format(pi, digits=10)
[1] "3.141592654"
2 指数表記にする大きさの設定
デフォルトでは1e+5
以上は指数表記になります2。
10^5-1
[1] 99999
10^5
[1] 1e+05
options(digits=n)
(n∈ℕ)で1e+5
の+5
のところを増減できます。
まずは増やしてみましょう。
options(scipen=1)
10^5-1
[1] 99999
10^5
[1] 100000
10^6-1
[1] 999999
10^6
[1] 1e+06
次は減らしてみましょう。
options(scipen=-2)
10^5-1
[1] 1e+05
10^5
[1] 1e+05
10^3-1
[1] 999
10^3
[1] 1e+03
ドキュメントの英語が分かりづらいと言う話を見かけたのですが、そもそも相対指定なのが分かりづらいですね。
2.1
format(x, scientific = FALSE)
で指数表記を回避
グローバルな設定に左右されたくない関数内などでは、options
を変えるよりはformat
関数を使う方がよいでしょう。
options(scipen=-3)
format(10^5, digits=10)
[1] "1e+05"