1

先行ゼロが表示されないように数値をフォーマットする最良の方法は何ですか? 例えば:

test = .006
sprintf/format/formatC( ??? )  # should result in ".006"
4

3 に答える 3

6

以前に一度答えたと思いますが、見つかりません。先行ゼロを削除する形式について他に伝えることはできません...したがって、たとえば:を介して自分で行う必要があります。sprintf()substring()

R> val <- 0.006
R> aa <- substring(sprintf("%4.3f", val), 2)
R> aa
[1] ".006"
R> 
于 2012-11-12T23:55:01.477 に答える
1

正規表現の検索と置換を使用して、いつでも自分で修正できます。

library(stringr)
test = .006
str_replace(as.character(test), "^0\\.", ".")

最もエレガントな答えではありませんが、うまくいきます。好みの浮動小数点形式as.characterなど、好きな文字列変換に置き換えます。sprintf

于 2012-11-13T00:01:39.243 に答える