私は50万行のファイルを20個持っており、それぞれ1行に2つの数字があります。目標は、すべてのA番号のA番号の総数に対する異なるペア(AB)のパーセンテージを取得することです。したがって、結果はこれらのファイルからの数値とそのパーセンテージになります。
例えば:
1 1
1 1
1 1
1 2
私に150%を与えるはずです(合計4Aのうち2つの異なるペア)。
次の方法は遅すぎます:異なる数
cat files | sort | uniq -c
総数
cat files | cut -f1 | sort | uniq -c
次に、これらの結果を繰り返し処理し、A数あたりのパーセンテージをカウントします。
このためにクエリ(bash / perl)を最適化する方法は?また、これをこれらのA番号のサブセットに対してのみ実行する必要がある場合、それを最適化するにはどうすればよいですか?(たとえば、20k Aの数値の場合、500kすべてではありません)
よろしくお願いします