Mercurial > hg > cc > cirrus_home
view bin/uniq_merge.py @ 143:ddff993994be
too clever by half, keys won't work in parallel for e.g. media types
author | Henry S. Thompson <ht@inf.ed.ac.uk> |
---|---|
date | Wed, 20 Oct 2021 15:47:55 +0000 |
parents | 464d2dfb99c9 |
children | f5e2211b50bd |
line wrap: on
line source
#!/usr/bin/env python3 # Merge counts by key from the output of "uniq -c" and sort in descending order # An alternative to sus when the scale is too big for the initial sort, or if uniq -c already does a lot # of the work # Usage: ... | uniq -c | uniq-merge.py import sys s={} for l in sys.stdin: (i,d)=l.split() i=int(i) if d in s: s[d]+=i else: s[d]=i for (d,n) in sorted(s.items(),key=lambda j:j[1],reverse=True): print('%5d\t%s'%(n,d))