首页 > 系统相关 >linux 中awk 根据多列读数据进行去重复

linux 中awk 根据多列读数据进行去重复

时间:2024-02-18 10:24:36浏览次数:48  
标签:3917 STRIP2 XM rna 读数据 awk linux gene ID

 

001、

(base) [b20223040323@admin1 test2]$ ls
test.txt
(base) [b20223040323@admin1 test2]$ cat test.txt   ## 测试数据如下;根据第一列和第三列对数据进行去重复
ID=gene-RIN1    rna-XM_018043206.1      3615
ID=gene-STRIP2  rna-XM_018046935.1      3917
ID=gene-STRIP2  rna-XM_018046937.1      3917
ID=gene-STRIP2  rna-XM_018046937.1      3917
ID=gene-SLC35D2 rna-XM_018052476.1      1603
ID=gene-DENND6B rna-XM_018048970.1      4265
ID=gene-PSMD13  rna-XM_005700085.3      1683
ID=gene-LAT     rna-XM_018040785.1      1790
ID=gene-LAT     rna-XM_018040784.1      1790
ID=gene-PSMD14  rna-XM_005676052.2      1908

 

002、

(base) [b20223040323@admin1 test2]$ awk '{if(ay1[$1] == "") {ay1[$1] = "xxx"; tmp = $1$3; print $0; next}; if(tmp == $1$3) {print $0, "dup"}}' test.txt
ID=gene-RIN1    rna-XM_018043206.1      3615            ## 标记处重复
ID=gene-STRIP2  rna-XM_018046935.1      3917
ID=gene-STRIP2  rna-XM_018046937.1      3917 dup
ID=gene-STRIP2  rna-XM_018046937.1      3917 dup
ID=gene-SLC35D2 rna-XM_018052476.1      1603
ID=gene-DENND6B rna-XM_018048970.1      4265
ID=gene-PSMD13  rna-XM_005700085.3      1683
ID=gene-LAT     rna-XM_018040785.1      1790
ID=gene-LAT     rna-XM_018040784.1      1790 dup
ID=gene-PSMD14  rna-XM_005676052.2      1908
(base) [b20223040323@admin1 test2]$ awk '{if(ay1[$1] == "") {ay1[$1] = "xxx"; tmp = $1$3; print $0; next}; if(tmp == $1$3) {next}}' test.txt
ID=gene-RIN1    rna-XM_018043206.1      3615               ## 去重复
ID=gene-STRIP2  rna-XM_018046935.1      3917
ID=gene-SLC35D2 rna-XM_018052476.1      1603
ID=gene-DENND6B rna-XM_018048970.1      4265
ID=gene-PSMD13  rna-XM_005700085.3      1683
ID=gene-LAT     rna-XM_018040785.1      1790
ID=gene-PSMD14  rna-XM_005676052.2      1908

 。

 

标签:3917,STRIP2,XM,rna,读数据,awk,linux,gene,ID
From: https://www.cnblogs.com/liujiaxin2018/p/18018838

相关文章

  • Tenable Nessus 10.7.0 (Unix, Linux, Windows) - #1 漏洞评估解决方案
    TenableNessus10.7.0(Unix,Linux,Windows)-#1漏洞评估解决方案发布Nessus试用版自动化安装程序,支持macOSSonoma、RHEL9和Ubuntu22.04请访问原文链接:TenableNessus10.7.0(Unix,Linux,Windows)-#1漏洞评估解决方案,查看最新版。原创作品,转载请保留出处。......
  • Nessus 10.7 Auto Installer for RHEL 9/AlmaLinux 9/Rocky Linux 9
    Nessus10.7AutoInstallerforRHEL9/AlmaLinux9/RockyLinux9发布Nessus试用版自动化安装程序,支持macOSSonoma、RHEL9和Ubuntu22.04请访问原文链接:https://sysin.org/blog/nessus-auto-install-for-rhel-9/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.or......
  • linux 中awk命令实现根据一列数值的大小筛选指定列多个类别的最大或者最小项
     001、(base)[b20223040323@admin1test2]$cat003.txt##测试数据如下,第一列有多个项,且部分项有重复,实现根据第三列筛选出最大的项ID=gene-TRNAC-GCArna-TRNAC-GCA72ID=gene-ATP5Orna-XM_005674665.3793ID=gene-ITSN1rna-XR_001917533.14......
  • 中端知识和工具+字符设备和块设备+LMA和VMA+gdb查看系统调用+vim查看指定文件链接的au
    中端知识和工具https://www.cnblogs.com/yjw951012/p/12865036.html抖动(Jitter)和偏移(skew)信号周期的长度总会有一定变化,从而导致下一个沿的到来时间不确定。这种不确定就是抖动(jitter)。因时钟线长度不同或负载不同,导致时钟到达相邻单元的时间不同,这个时间上的偏差就叫时钟偏......
  • Linux网络数据流通
    硬中断和软中断硬中断由与系统相连的外部设备(网卡、硬盘等)产生,通知操作系统外部设备状态变更。比如当网卡收到一个数据包时,就会产生硬中断。硬中断是外部设备对CPU的中断;硬中断是由硬件产生的,比如网卡、磁盘、时钟等。处于中断的驱动是需要运行在CPU上的,因此中断产生......
  • linux 中 计算一列数值中最大值、最小值、及最大值和最小值之差
     01、先排序,然后取首尾(数据大时不适用)[root@pc1test1]#lsa.txt[root@pc1test1]#cata.txt##测试文件833928246[root@pc1test1]#sort-na.txt|head-n1##最小值2[root@pc1test1]#sort-na.txt|tail-n1##......
  • Linux下查看文件的最后修改时间
    查看文件的详细信息statabc.txtFile:abc.txtSize:15Blocks:8IOBlock:4096regularfileDevice:fd06h/64774dInode:262168Links:1Access:(0776/-rwxrwxrw-)Uid:(0/root)Gid:(0/root)Access:2024......
  • QT_linux
    加载本地图片/*QPixmap类型对象*/QPixmapimage;/*加载*/image.load(":/image/cd.png");//不缩放ui->label->setScaledContents(false);//图片在标签中居中显示(水平和垂直方向均居中)ui->label->setAlignment(Qt::AlignCenter);pixbad2(":/1/bad.png");......
  • 【虚拟机新手起步04】2步完成kali linux安装。
    2步完成kalilinux安装一、选择kali镜像进行安装二、在vmware中打开虚拟机一.选择kali镜像进行安装:https://mirrors.tuna.tsinghua.edu.cn/kali-images/选择对应版本进行安装下载完成之后,解压这个压缩包二.在vmware中打开虚拟机选中虚拟机打开:正常使用END......
  • Linux命令基础,黑马程序员学习笔记
    Linux命令基础命令基础格式command[-options][parameter]command:命令本身-options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等示例:ls-l/home/itheimals是命令本身,-l是选项,/home/itheim......