- 论坛徽章:
- 0
|
- #! /usr/bin/perl -w
- use strict;
- die "#usage:perl $0 <data1><data2>\n" unless @ARGV==2;
- my ($d1,$d2)=@ARGV;
- open IN,$d2||die;
- my %ha;
- $/=">";<IN>;$/="\n";
- while(<IN>){
- my $id=$1 if /^(\S+)/;
- $/=">";chomp(my $con=<IN>);$/="\n";
- my @p=split/\n/,$con;
- next if @p==1;
- my @gene=grep /^ENSP/,@p;
- next if @gene != 1;
- foreach (@p){
- $ha{$_}=$gene[0] if $_ ne $gene[0];
- }
- }
- close IN;
- open IN,$d1||die;
- while(<IN>){
- chomp;
- my @a=split;
- my $out= exists $ha{$a[0]} ? "$_\t$ha{$a[0]}\n" : "$_\tNA\n";
- print $out;
- }
- close IN;
复制代码 |
|