2

"1.0"から (文字として)を返す関数など、数値を指定された有効数字の数に変換したいと思いますFUN(1.01)。(値はxtable.

これは些細なことだと思いますが、問題が発生しています。

これが私が試したことです:

> signif(1.01, 2)
[1] 1
> round(1.01, 2)
[1] 1.01
> format(1.01, digits = 2)
[1] "1"
> as.character(trunc(1.20, 3))
[1] "1"
> as.character(round(1.01, digits = 2))
[1] "1"

これを行う機能はありますか?

4

1 に答える 1

8

試してみてください?sprintf

> sprintf("%0.1f", 1.01)
[1] "1.0"

ともformatありformatCますが、これはよりユーザーフレンドリーであると思われるかもしれません。

> format(1.01,digits=1,nsmall=1)
[1] "1.0"
> formatC(1.01,digits=1,format="f")
[1] "1.0"
于 2012-07-19T19:21:43.883 に答える