免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4733 | 回复: 6
打印 上一主题 下一主题

关于awk去重取最大值的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-01-01 12:09 |只看该作者 |倒序浏览
本帖最后由 月吻清风 于 2011-01-01 12:30 编辑

a.txt数据格式如下:
10000001        42        aa1
10000001        23        ac3
10000001        1        xiaoxiao14
10000002        33        ddd15
10000002        2        xidf36
10000002        47        xsdf47
10000034        41        xidfssdfs
10000034        5        sdfasdfo59
10000034        23        xsdfso310
10000034        66        xisfs411
10000034        66        xdfsd
10000034        53        xiajhgjgo313
10012013        23        aiaghjgo14
10012013        23        ghjgxiao15
10012013        45        hjkhkoxiao16
10234018        57        xi567xiao17
10234018        5        bbbhiao18
10234018        65        xcccxiao19
要得到如下结果:

10000001        42        aa1
10000002        47        xsdf47
10000034        66        xisfs411
10012013        45        hjkhkoxiao16
10234018        65        xcccxiao19


基本上就是第一列去重取第二列最大值,如果相等的只取一个,小弟百思不得其解,总是处理不对,请各位帮忙看看

论坛徽章:
1
摩羯座
日期:2014-12-29 15:59:36
2 [报告]
发表于 2011-01-01 12:26 |只看该作者
awk '{if(a[$1]<$2){a[$1]=$2;b[$1]=$3}}END{for(c in a){print c,a[c],b[c]}}' file|sort

论坛徽章:
2
射手座
日期:2014-10-10 15:59:4715-16赛季CBA联赛之上海
日期:2016-03-03 10:27:14
3 [报告]
发表于 2011-01-01 12:55 |只看该作者
sort -s -k1n -k2nr |awk '!a[$1]++'

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
4 [报告]
发表于 2011-01-01 13:14 |只看该作者
sort -r lines2|uniq -w9|sort
10000001        42        aa1
10000002        47        xsdf47
10000034        66        xisfs411
10012013        45        hjkhkoxiao16
10234018        65        xcccxiao19

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
5 [报告]
发表于 2011-01-01 13:20 |只看该作者
  1. $ awk '$2>tmp{str[$1]=$0;tmp=$2}END{for(i in str)print str[i]}' a.txt
复制代码

论坛徽章:
2
射手座
日期:2014-10-10 15:59:4715-16赛季CBA联赛之上海
日期:2016-03-03 10:27:14
6 [报告]
发表于 2011-01-01 13:56 |只看该作者
cat file | awk '{b[$1" "$2]=$3}$2>tem {v=$2}{a[$1]=a[$1]?a[$1]:v;$2} END {for (i in a) print i,a[i],b[i" "a[i]]}' |sort

论坛徽章:
0
7 [报告]
发表于 2011-01-01 15:08 |只看该作者
感谢大牛的鼎力帮助,我绕弯了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP