他のフィールドに関連するフィールドの合計です。

他のフィールドに関連するフィールドの合計です。

フィールドを他のフィールドに関連付けてフィールドの合計を見つけるには、awk次の例を検討してください。

文書:

boo,foo,VO,1000
boo,foo,VO,1000
bar,var,DT,1000
var,bar,VO,2000

$3この例ではpersの数を収集する必要があるため、$4結果は次のようになります。

VO,1000 2
DT,1000 1
VO,2000 1

最初と2番目のフィールドは無視されます。

答え1

並べ替えても大丈夫なら、次はうまくいきます。

awk -F, '{print $3","$4}' <file name> | uniq -c

uniq -c繰り返し回数の計算

入力の場合、出力は次のようになります。

  2 VO,1000
  1 DT,1000
  1 VO,2000

必要に応じて、2番目のawkを使用して追加の編集を実行できます。

答え2

awkでこれを行うには:

awk '
    BEGIN {FS=SUBSEP=","} 
    {count[$3,$4]++} 
    END {for (key in count) print key, count[key]}
' file
DT,1000 1
VO,1000 2
VO,2000 1

関連情報