首页 > 其他 > 详细

提取两文件相同ID的行

时间:2020-07-17 10:49:01      阅读:51      评论:0      收藏:0      [点我收藏+]

file1的文件如下所示:

a rs1
b rs2
c rs4

file2的文件如下所示:

a 0.170721 -1.82031 0.0690841 rs1
b 0.0803412 -1.01669 0.309605 rs2
c 0.21245 0.22964 0.81843 rs3
d 0.0707158 -0.499683 0.617435 rs4

现在想根据file1的第二列和file2的第五列相同的rs提取数据,生成的file3如下所示:

a 0.170721 -1.82031 0.0690841 rs1
b 0.0803412 -1.01669 0.309605 rs2
d 0.0707158 -0.499683 0.617435 rs4

则用如下命令:
awk ‘NR==FNR{a[$2];next}$5 in a‘ file1 file2 > file3

a[$2]以第一个文件的第二列为下标,建立数组a;
next跳过第一个文件到第二个文件;
$5 in a如果第二个文件第五列的ID在数值a中,则打印。

提取两文件相同ID的行

原文:https://www.cnblogs.com/chenwenyan/p/13328122.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!