]> git.donarmstrong.com Git - function2gene.git/blobdiff - bin/combine_results
start working towards supporting keyword weights
[function2gene.git] / bin / combine_results
index 76a4e0c044e47f3080f9949c1ed43cb066576ddc..e49de8f9bb20c1b730bf091dee5ac7c9d338a00c 100755 (executable)
@@ -69,9 +69,10 @@ use IO::File;
 my %options = (debug    => 0,
               help     => 0,
               man      => 0,
+              keywords => [],
              );
 
-GetOptions(\%options,'keyword|k=s','debug|d+','help|h|?','man|m');
+GetOptions(\%options,'keywords|k=s@','debug|d+','help|h|?','man|m');
 
 
 pod2usage() if $options{help};
@@ -104,6 +105,7 @@ for my $file_name (@ARGV) {
          $genes{$gene[NAME]}{database}{$gene[DBNAME]}++;
          $genes{$gene[NAME]}{hits}++;
          $genes{$gene[NAME]}{terms}{$gene[KEYWORD]}++;
+         $genes{$gene[NAME]}{terms}{$gene[KEYWORD].'['.$gene[DBNAME].']'}++;
          add_unique_parts($genes{$gene[NAME]},'refseq',$gene[REFSEQ]);
          add_if_better($genes{$gene[NAME]},'description',$gene[DESCRIPTION]);
          add_if_better($genes{$gene[NAME]},'location',$gene[LOCATION]);
@@ -114,9 +116,7 @@ for my $file_name (@ARGV) {
 
 print join(',',map {qq("$_")} @csv_fields),qq(\n);
 for my $gene (keys %genes) {
-     $genes{$gene}{rzscore} = scalar keys %{$genes{$gene}{terms}};
-     next if $genes{$gene}{rzscore} == 1 and exists $genes{$gene}{terms}{antigen};
-     $genes{$gene}{rzscore} -= 1 if exists $genes{$gene}{terms}{antigen};
+     $genes{$gene}{rzscore} = scalar grep {$_ !~ /\[/} keys %{$genes{$gene}{terms}};
      print STDOUT join (',',
                        map {s/"//g; qq("$_")}
                        map {