[Bio] / FigKernelPackages / representative_sequences.pm Repository:
ViewVC logotype

Diff of /FigKernelPackages/representative_sequences.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.12, Tue Apr 6 03:36:43 2010 UTC revision 1.13, Wed Sep 29 18:41:49 2010 UTC
# Line 354  Line 354 
354      my $logfile   = undef;                 # Log file of sequences processed      my $logfile   = undef;                 # Log file of sequences processed
355      my $max_e_val = 0.01;                  # Blast E-value to decrease output      my $max_e_val = 0.01;                  # Blast E-value to decrease output
356      my $sim_meas  = 'identity_fraction';   # Use sequence identity as measure      my $sim_meas  = 'identity_fraction';   # Use sequence identity as measure
357        my $keep_id   = [];
358        my $keep_gid  = [];
359    
360      #  Two questionable decisions:      #  Two questionable decisions:
361      #     1. Be painfully flexible on option names.      #     1. Be painfully flexible on option names.
# Line 362  Line 364 
364      foreach ( keys %$options )      foreach ( keys %$options )
365      {      {
366          my $value = $options->{ $_ };          my $value = $options->{ $_ };
367          if    ( m/^log/i )                  #  logfile  
368            if    ( m/keep_?gid/i )
369            {
370                $keep_gid = $value;
371            }
372            elsif ( m/keep_?id/i )
373            {
374                $keep_id = $value;
375            }
376            elsif ( m/^log/i )                  #  logfile
377          {          {
378              next if ! $value;              next if ! $value;
379              $logfile = ( ref $value eq "GLOB" ? $value : \*STDOUT );              $logfile = ( ref $value eq "GLOB" ? $value : \*STDOUT );
# Line 418  Line 429 
429          }          }
430      }      }
431    
432        my %keep_gid_hash = map { $_ => 1 } @$keep_gid;
433        my %keep_id_hash  = map { $_ => 1 } @$keep_id;
434    
435      my $seqs2 = [];      my $seqs2 = [];
436      foreach ( @$seqs )      foreach ( @$seqs )
437      {      {
# Line 428  Line 442 
442          }          }
443          else          else
444          {          {
445                if ( $keep_id_hash{ $id } || ( $id =~ /(^fig\|\d+\.\d+)\./ && $keep_gid_hash{ $1 } ))
446                {
447                    push @$reps2, $_;
448                    $seen->{ $id }++
449                }
450                else
451                {
452              push @$seqs2, $_;              push @$seqs2, $_;
453          }          }
454      }      }
455        }
456    
457      if ( $by_size )      if ( $by_size )
458      {      {
# Line 650  Line 672 
672      my $logfile   = undef;                 # Log file of sequences processed      my $logfile   = undef;                 # Log file of sequences processed
673      my $max_e_val = 0.01;                  # Blast E-value to decrease output      my $max_e_val = 0.01;                  # Blast E-value to decrease output
674      my $sim_meas  = 'identity_fraction';   # Use sequence identity as measure      my $sim_meas  = 'identity_fraction';   # Use sequence identity as measure
675        my $keep_id   = [];
676        my $keep_gid  = [];
677    
678      #  Two questionable decisions:      #  Two questionable decisions:
679      #     1. Be painfully flexible on option names.      #     1. Be painfully flexible on option names.
# Line 658  Line 682 
682      foreach ( keys %$options )      foreach ( keys %$options )
683      {      {
684          my $value = $options->{ $_ };          my $value = $options->{ $_ };
685          if    ( m/^log/i )                  #  logfile  
686            if    ( m/keep_?gid/i )
687            {
688                $keep_gid = $value;
689            }
690            elsif ( m/keep_?id/i )
691            {
692                $keep_id = $value;
693            }
694            elsif ( m/^log/i )                  #  logfile
695          {          {
696              next if ! $value;              next if ! $value;
697              $logfile = ( ref $value eq "GLOB" ? $value : \*STDOUT );              $logfile = ( ref $value eq "GLOB" ? $value : \*STDOUT );
# Line 710  Line 743 
743          }          }
744      }      }
745    
746        my %keep_gid_hash = map { $_ => 1 } @$keep_gid;
747        my %keep_id_hash  = map { $_ => 1 } @$keep_id;
748    
749      my $seqs2 = [];      my $seqs2 = [];
750      foreach ( @$seqs )      foreach ( @$seqs )
751      {      {
# Line 720  Line 756 
756          }          }
757          else          else
758          {          {
759                if ( $keep_id_hash{ $id } || ( $id =~ /(^fig\|\d+\.\d+)\./ && $keep_gid_hash{ $1 } ))
760                {
761                    push @$reps2, $_;
762                    $seen->{ $id }++
763                }
764                else
765                {
766              push @$seqs2, $_;              push @$seqs2, $_;
767          }          }
768      }      }
769        }
770    
771      if ( $by_size )      if ( $by_size )
772      {      {

Legend:
Removed from v.1.12  
changed lines
  Added in v.1.13

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3