使用UNIX可以对第4列和第5列进行排序,删除重复项,但仍对每个重复项计数

时间:2019-01-31 23:10:27

标签: csv unix

就像标题所述,我可以使用以下命令过滤结果:sort -t“,” -k5 -nr data.csv |切-d“,” -f4,5

我得到如下结果:

DISEASES OF HEART,5351
DISEASES OF HEART,4495
MALIGNANT NEOPLASMS,3438
MALIGNANT NEOPLASMS,3408
MALIGNANT NEOPLASMS,1540
INFLUENZA AND PNEUMONIA,707
INFLUENZA AND PNEUMONIA,614
CHRONIC LOWER RESPIRATORY DISEASES,502
CHRONIC LOWER RESPIRATORY DISEASES,388
CEREBROVASCULAR DISEASE,382
HUMAN IMMUNODEFICIENCY VIRUS DISEASE,297
CEREBROVASCULAR DISEASE,276

但是我正在尝试结合死亡原因,同时增加其死亡人数。

我是一个新手,所以我尝试遵循基本的排序命令。

1 个答案:

答案 0 :(得分:0)

可以使用awk完成。在输出上运行以下命令。这里result.txt包含排序和过滤后的结果。您也可以使用管道运行此命令。

awk -F, '{A[$1]+=$2} END {for (i in A) print i","A[i]}' result.txt