当特定列具有相同值时删除行

问题描述 投票:0回答:1

我有这个 16 列文件(制表符分隔符):

0/0;20,20       0/1;20,20       0/0;20,20       0/1;20,20       0/0;20,20       0/1;20,20       0/1;20,20       0/1;20,20       0/1;20,20       0/1;20,20     0/1;20,20        0/1;20,20       0/1;20,20       0/1;20,20       0/1;20,20       0/1;20,20
0/0;11,11       0/2;11,6        0/0;11,11       0/2;11,6        0/0;11,11       0/1;11,6        0/3;11,6        0/2;11,6        0/2;11,6        0/1;11,6      0/2;11,6 0/1;11,6        0/1;11,6        0/1;11,6        0/1;11,6        0/1;11,6
0/0;12,12       0/1;12,10       0/0;12,12       0/1;12,10       0/0;12,12       0/1;12,10       0/1;12,10       0/1;12,10       0/1;12,10       0/1;12,10     0/1;12,10        0/1;12,10       0/1;12,10       0/1;12,10       0/1;12,10       0/1;12,10
0/0;43,43       0/1;43,44       0/0;43,43       0/1;43,44       0/0;43,43       0/1;43,44       0/1;43,44       0/1;43,44       0/1;43,44       0/1;43,44     0/1;43,44        0/1;43,44       0/1;43,44       0/1;43,44       0/1;43,44       0/1;43,44
0/0;10,10       0/0;10,10       0/0;10,10       0/0;10,10       0/0;10,10       0/0;10,10       0/0;10,10       0/1;10,9        0/0;10,10       0/0;10,10     0/0;10,10        0/1;10,9        0/2;10,11       0/0;10,10       0/0;10,10       0/1;10,9

我需要删除 $2、$4 和 $6 列中的值到末尾 $16 相等的整行。我只是用:

awk -F'\t' '!a[$2 $4 $6 $7 $8 $9 $10 $11 $12 $13 $14 $15 $16]++' test.txt 

但是仍然输出所有行。我应该只得到两行,我注意到指定列之间的差异:

0/0;11,11       0/2;11,6        0/0;11,11       0/2;11,6        0/0;11,11       0/1;11,6        0/3;11,6        0/2;11,6        0/2;11,6        0/1;11,6      0/2;11,6 0/1;11,6        0/1;11,6        0/1;11,6        0/1;11,6        0/1;11,6
0/0;10,10       0/0;10,10       0/0;10,10       0/0;10,10       0/0;10,10       0/0;10,10       0/0;10,10       0/1;10,9        0/0;10,10       0/0;10,10     0/0;10,10        0/1;10,9        0/2;10,11       0/0;10,10       0/0;10,10       0/1;10,9

有什么帮助吗?

awk
1个回答
0
投票

这不是最终解决方案,但它可以给您一个开始:

cat file1.txt | awk -F "\t" '{if ($2!=$4) print $0}'
© www.soinside.com 2019 - 2024. All rights reserved.