免费注册 查看新帖 |

Chinaunix

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

【求助】 如何去除按行排列重复的数据行 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-06-08 19:07 |只看该作者 |倒序浏览
本帖最后由 bmechuangye 于 2010-06-08 19:57 编辑

部分数据如下:
A-3118-1        Xr1:143360933        A-3118-3        Xr1:142543754
A-3118-1        Xr15:21033448        A-3118-4        Xr1:142662802
A-3118-1        Xr1:143117763        A-3118-2        Xr1:142619698
A-3118-2        Xr1:142619698        A-3118-1        Xr1:143117763
A-3118-2        Xr1:143342816        A-3118-3        Xr1:143117761
A-3118-3        Xr1:142543754        A-3118-1        Xr1:143360933
A-3118-3        Xr1:143117761        A-3118-2        Xr1:143342816

B-mir-1233-1        Xr15:34817214        B-mir-1233-2        Xr15:34671002
B-mir-1233-2        Xr15:34671002        B-mir-1233-1        Xr15:34817214
请问各位如何实现去除大量数据中按行排列重复的数据行即除去标为红色的行?谢谢!

论坛徽章:
0
2 [报告]
发表于 2010-06-08 19:15 |只看该作者
按行排列重复,再具体说明一下吧。

论坛徽章:
0
3 [报告]
发表于 2010-06-08 19:20 |只看该作者
看明白了。

  1. awk '!a[$1"_"$2"_"$3"_"$4]&&!a[$3"_"$4"_"$1"_"$2]{print; a[$1"_"$2"_"$3"_"$4]=1}' URFILE
复制代码

论坛徽章:
0
4 [报告]
发表于 2010-06-08 20:09 |只看该作者
回复 3# kwokcn


非常感谢!“!a[$1"_"$2"_"$3"_"$4]&&!a[$3"_"$4"_"$1"_"$2]”中 “!”是什么意思?是“不存在“意思吗?

但我只列出了数据的部分列数,实际上数据列数更多如三十列,如何处理呢?我不知道如何在一行中将这一行中的各列数据按一定顺序重排(比如按打头字母或数值大小排列或比如你这里的排列)?实现了这一点的话,然后"sort -u"就可以了,但问题是又如何将原来对应的重排前的行(原样)输出呢? 我还不知如何处理。

论坛徽章:
0
5 [报告]
发表于 2010-06-08 20:29 |只看该作者
  1. awk '!a[$1","$3]++&&!a[$3","$1]++' file
复制代码
汗一个按行排列重复

论坛徽章:
0
6 [报告]
发表于 2010-06-08 20:33 |只看该作者
回复 4# bmechuangye


把数据贴出来,说明下如何按列重复过滤数据
比如顶楼的例子是按第1列、第3列进行重复过滤

论坛徽章:
0
7 [报告]
发表于 2010-06-08 20:36 |只看该作者
回复 1# bmechuangye


    awk的关联数组也可以

论坛徽章:
0
8 [报告]
发表于 2010-06-08 21:58 |只看该作者
  1. awk '!a[$1_$2]++&&!a[$3_$4]++' urfile
复制代码

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
9 [报告]
发表于 2010-06-08 22:38 |只看该作者
回复 4# bmechuangye


!的意思是“逻辑非”,不是“不存在”。

论坛徽章:
0
10 [报告]
发表于 2010-06-08 23:42 |只看该作者
回复 6# ywlscpl
谢谢!
比如说列数这么多的

  1. Xr1        142667288        142667363        A-3118-1        +        75        1        Xr1        142543754        142731022        Xr1:143360933        -        Xr1        143424140        143424215        A-3118-3        960        -        75        1        Xr1        143360933        143544525        Xr1:142543754        -
  2. Xr1        142667288        142667363        A-3118-1        +        75        1        Xr1        142662802        142670536        Xr15:21033448        +        Xr15        21038123        21038198        A-3118-4        960        +        75        1        Xr15        21033448        21040734        Xr1:142662802        +
  3. Xr1        142667288        142667363        A-3118-1        +        75        1        Xr1        142619698        142731022        Xr1:143117763        +        Xr1        143163749        143163822        A-3118-2        960        +        73        1        Xr1        143117763        143227450        Xr1:142619698        +
  4. Xr1        143163749        143163822        A-3118-2        +        73        1        Xr1        143117763        143227450        Xr1:142619698        +        Xr1        142667288        142667363        A-3118-1        960        +        75        1        Xr1        142619698        142731022        Xr1:143117763        +
  5. Xr1        143163749        143163822        A-3118-2        +        73        1        Xr1        143117761        143245601        Xr1:143342816        -        Xr1        143424140        143424215        A-3118-3        960        -        75        1        Xr1        143342816        143466731        Xr1:143117761        -
  6. Xr1        143424140        143424215        A-3118-3        -        75        1        Xr1        143360933        143544525        Xr1:142543754        -        Xr1        142667288        142667363        A-3118-1        960        +        75        1        Xr1        142543754        142731022        Xr1:143360933        -
  7. Xr1        143424140        143424215        A-3118-3        -        75        1        Xr1        143342816        143466731        Xr1:143117761        -        Xr1        143163749        143163822        A-3118-2        960        +        73        1        Xr1        143117761        143245601        Xr1:143342816        -
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP