[Bio] / FigTutorial / gf2maps_and_subs.pl Repository:
ViewVC logotype

View of /FigTutorial/gf2maps_and_subs.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (download) (as text) (annotate)
Thu Jun 10 13:39:16 2004 UTC (15 years, 5 months ago) by olson
Branch: MAIN
CVS Tags: merge-bodev_news-3, rast_rel_2014_0912, rast_rel_2008_06_18, rast_rel_2008_06_16, rast_rel_2008_07_21, rast_rel_2010_0928, rast_2008_0924, Root-bobdev_news, rast_rel_2008_09_30, caBIG-13Feb06-00, rast_rel_2010_0526, rast_rel_2014_0729, merge-trunktag-bobdev_news-1, rast_rel_2009_05_18, caBIG-05Apr06-00, rast_rel_2009_0925, rast_rel_2010_1206, rast_rel_2010_0118, caBIG-00-00-00, rast_rel_2009_02_05, rast_rel_2011_0119, rast_rel_2008_12_18, merge-trunktag-bodev_news-3, merge-bobdev_news-2, merge-bobdev_news-1, rast_rel_2008_10_09, rast_release_2008_09_29, rast_rel_2008_04_23, rast_rel_2008_08_07, rast_rel_2009_07_09, rast_rel_2010_0827, myrast_33, rast_rel_2011_0928, rast_rel_2008_09_29, rast_rel_2008_10_29, rast_rel_2009_03_26, merge-trunktag-bobdev_news-2, rast_rel_2008_11_24, HEAD
Branch point for: Branch-bobdev_news
Changes since 1.1: +1 -15 lines
clean up tutorial code

use FIG;
my $fig = new FIG;

use strict;
my($usage,$peg,$func,@roles,$role,@maps,$map);
my(%in_map,@maps_it_connects_to,@subsystems_it_is_in);
my($map_name,$subsystem);

$usage = "usage: gf2maps_and_subs PEG";

# The single input argument must be a FIG id, which is used to get the assigned function.
# The program then prints a list of maps to which the gene can be connected,
# followed by a list of subsystems that contain the gene.

($peg = shift @ARGV)
    || die $usage;

if (($func = $fig->function_of($peg)) && (! &FIG::hypo($func)))
{
    @roles = $fig->roles_of_function($func);
    foreach $role (@roles)
    {
	@maps = $fig->role_to_maps($role);
	foreach $map (@maps)
	{
	    $in_map{$map} = 1;
	}
    }

    @maps_it_connects_to       = sort keys(%in_map);

    if (@maps_it_connects_to > 0)
    {
	print "Maps that connect to $func\n\n";
	foreach $map (@maps_it_connects_to)
	{
	    $map_name = $fig->map_name($map);
	    print "$map\t$map_name\n";
	}
	print "\n";
    }

}
else
{
    print STDERR "you need to give a valid PEG with a non-hypothetical function to connect to maps\n";
}

@subsystems_it_is_in = $fig->peg_to_subsystems($peg);

if (@subsystems_it_is_in > 0)
{
    print "Subsystems that contain $peg\n\n";
    foreach $subsystem (@subsystems_it_is_in)
    {
	print "$subsystem\n";
    }
}

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3