[Bio] / FigKernelScripts / get_class_examples.pl Repository:
ViewVC logotype

Annotation of /FigKernelScripts/get_class_examples.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (view) (download) (as text)

1 : overbeek 1.1
2 :     use FIG;
3 :     $fig = new FIG;
4 :    
5 :     $usage = "usage: get_class_examples fc_output MinNonHypo MaxNonHypo MinHypo MaxHypo > examples";
6 :    
7 :     (
8 :     ($fc_out = shift @ARGV) &&
9 :     ($minN = shift @ARGV) &&
10 :     ($maxN = shift @ARGV) &&
11 :     ($minH = shift @ARGV) &&
12 :     ($maxH = shift @ARGV)
13 :     )
14 :     || die $usage;
15 :    
16 :     open(CLUSTERS,"cut -f1,3 $fc_out | cluster_objects |")
17 :     || die $usage;
18 :    
19 :     while (defined($_ = <CLUSTERS>))
20 :     {
21 :     @fids = ($_ =~ /fig\|\d+\.\d+\.peg\.\d+/g);
22 :     @hypo = ();
23 :     @non = ();
24 :     foreach $peg (@fids)
25 :     {
26 :     $func = $fig->function_of($peg);
27 :     if (&FIG::hypo($func))
28 :     {
29 :     push(@hypo,[$peg,$func]);
30 :     }
31 :     else
32 :     {
33 :     push(@non,[$peg,$func]);
34 :     }
35 :     }
36 :    
37 :     if (&FIG::between($minN,scalar @non,$maxN) &&
38 :     &FIG::between($minH,scalar @hypo,$maxH))
39 :     {
40 :     foreach $x (@non)
41 :     {
42 :     ($peg,$func) = @$x;
43 :     print "$peg\t$func\n";
44 :     }
45 :     print "\n";
46 :    
47 :     foreach $x (@hypo)
48 :     {
49 :     ($peg,$func) = @$x;
50 :     print "$peg\t$func\n";
51 :     }
52 :     print "======\n\n";
53 :     }
54 :     }

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3