我试图消除(巨大的)制表符分隔的文本文件中两个字段之间的制表符分隔。我的数据如下所示:
rs12345 8000 A B
rs67890 8000 B B
rs54321 8000 A A
...
我想把它变成:
rs12345 8000 AB
rs67890 8000 BB
rs54321 8000 AA
...
我想合并的两个列的右侧还有其他几个列(不修改)。
非常感谢任何可以提供帮助的人。
卢卡
我试图消除(巨大的)制表符分隔的文本文件中两个字段之间的制表符分隔。我的数据如下所示:
rs12345 8000 A B
rs67890 8000 B B
rs54321 8000 A A
...
我想把它变成:
rs12345 8000 AB
rs67890 8000 BB
rs54321 8000 AA
...
我想合并的两个列的右侧还有其他几个列(不修改)。
非常感谢任何可以提供帮助的人。
卢卡
以下应该有效(使用bash)。它将第三个字段设置为第三个和第四个字段的连接值,并将第四个字段左移一位。
awk -F$'\t' -v OFS=$'\t' '{$3=$3$4;for(i=4; i<NF; ++i) $i=$(i+1);NF=NF-1;print}'
cat file
rs12345 8000 A B test 2332
rs67890 8000 B B ew 45
rs54321 8000 A A dfdfg 34
设置提交 $3 到 $3$4 并删除 $4 和额外的选项卡
awk '{$3=$3$4;$4="";sub("\t\t","\t")}1' OFS="\t" file
rs12345 8000 AB test 2332
rs67890 8000 BB ew 45
rs54321 8000 AA dfdfg 34