各行の値の合計値に対する割合を出す 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
最後の行に合計値が出ます。
関連
この記事に言及しているこのブログ内の記事