R 乱数
set.seed()は乱数種を指定する関数で、常に同じ乱数を発生させられる。
> rnorm(5)
[1] -1.1589164 0.6717548 -0.5479705 -0.3373437 0.1150608
> rnorm(5)
[1] -0.7928601 0.4900138 0.2429032 0.1189651 -0.1188704
> set.seed(1);rnorm(5)
[1] -0.6264538 0.1836433 -0.8356286 1.5952808 0.3295078
> set.seed(1);rnorm(5)
[1] -0.6264538 0.1836433 -0.8356286 1.5952808 0.3295078
R toJSON関数
toJSON関数(jsonlite)の挙動
# ubox()なし
x <- list(aaa = "あああ", bbb = "いいい") %>% toJASON
cat(x)
{"aaa":["あああ"],"bbb":["いいい"]}
# ubox()あり
x <- list(aaa = unbox("あああ"), bbb = unbox("いいい")) %>% toJASON
cat(x)
{"aaa":"あああ","bbb":"いいい"}
R 小数点の切り捨て・上げ
小数点の切り捨て・上げに関するコマンド
#roundコマンド
#digitsオプションで指定した桁で四捨五入
round(11.12345, digits = 4)
[1] 11.1235
#ceilingコマンド
#指定した値(整数部分)未満にならない最小の整数
ceiling(11.000001)
[1] 12
#floorコマンド
#指定した値(整数部分)を超えない最大の整数
floor(11.000001)
[1] 11
#truncコマンド
#小数点部分を切り捨て
trunc(11.11111)
[1] 11
#formatコマンド
#桁数を指定:nsmallオプション
format(11.000001, nsmall = 3)
[1] "11.000"
#おまけ
#string::str_padコマンドを使用する
#頭に0を追加して揃える:padオプションで頭に追加する内容を指定する
#tidyverseパッケージがなければインストール
if(!require("tidyverse", quietly = TRUE)){
install.packages("tidyverse");require("tidyverse")
}
11 %>% str_pad(4, pad = 0)
[1] "0011"
#少数点以下に0を追加
#例では小数点以下を4桁にする
#切上げにならない場合があるので注意
sprintf(11.10005, fmt = '%#.4f')
[1] "11.1000"