各行の値の合計値に対する割合を出す Perl ワンライナー
2016-02-03-3
[Programming][Perl]
記事にしてなかったのでメモ的に。
各行の値を全体の合計値で割った割合・比率を出力する Perl ワンライナー。
以下のように alias して使っています(zsh)。
実行例:
最後の行に合計値が出ます。
各行の値を全体の合計値で割った割合・比率を出力する Perl ワンライナー。
以下のように alias して使っています(zsh)。
alias wariai='perl -nle '\''s/,//g;push@v,$_+0;$s+=$_;
END{print join("\n",map{sprintf("%s\t%0.4f",$_,$_/$s)}@v,$s)}'\'
実行例:
% perl -le 'for(1..10){print int(rand(100))}' | wariai
24 0.0552
84 0.1931
82 0.1885
11 0.0253
63 0.1448
23 0.0529
22 0.0506
59 0.1356
51 0.1172
16 0.0368
435 1.0000
最後の行に合計値が出ます。
関連
この記事に言及しているこのブログ内の記事
