No.22512 桁数  【コロン】 2018/04/12(Thu) 17:43

お世話になります。相変わらずつまらない質問で申し訳ございませんが,
m1 <- mean(d[class==1, 2])
の値をグラフで表示すると小数第10位くらいまで表示され格好悪いです。例えば,3桁にする場合の方法についてなのですが,私は
m1 <- mean(d[class==1, 2])
m1 <- round(m1, digits=3)
と書き,下のm1が使われるようにしましたが,meanの中で引数として入れることは不可能なのでしょうか?もしくは,もっとスマートな書き方はないのでしょうか?

平均のオブジェクトがm1からm7まであり,コピペして数字の修正をすれば問題ないのですが,洗練された書き方がないのかなと悩んでおります。

よろしくお願いいたします。

No.22513 Re: 桁数  【青木繁伸】 2018/04/12(Thu) 22:13

mean2 = function(x, digits=3) round(mean(x), digits)
として,mean2(d[class==1, 2]) などとするだけでしょう。
> set.seed(123)
> mean2 = function(x, digits=3) round(mean(x), digits)
> mean2(rnorm(100), digits=4)
[1] 0.0904
> mean2(rnorm(100), digits=6)
[1] -0.107547
> mean2(rnorm(100), digits=8)
[1] 0.1204651
あるいは必要に応じて options(digits=xxx) を使う
> options(digits=3)
> pi
[1] 3.14
> mean(rnorm(100))
[1] 0.106
> options(digits=5)
> pi
[1] 3.1416
mean(rnorm(100))
[1] -0.0423

No.22514 Re: 桁数  【コロン】 2018/04/13(Fri) 15:51

青木先生

お礼が遅くなり申し訳ございません。関数を自分で作成するんですね!

無事,きれいなコードができました。ありがとうございました。

● 「統計学関連なんでもあり」の過去ログ--- 048 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る