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

View of /FigKernelScripts/NMPDRAnalysis.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.5 - (download) (as text) (annotate)
Tue Feb 5 02:54:29 2008 UTC (12 years ago) by parrello
Branch: MAIN
CVS Tags: mgrast_dev_08112011, rast_rel_2009_05_18, mgrast_dev_08022011, rast_rel_2014_0912, rast_rel_2008_06_18, myrast_rel40, rast_rel_2008_06_16, mgrast_dev_05262011, rast_rel_2008_12_18, mgrast_dev_04082011, rast_rel_2008_07_21, rast_rel_2010_0928, rast_2008_0924, mgrast_version_3_2, mgrast_dev_12152011, rast_rel_2008_04_23, mgrast_dev_06072011, rast_rel_2008_09_30, rast_rel_2009_0925, rast_rel_2010_0526, rast_rel_2014_0729, mgrast_dev_02212011, rast_rel_2010_1206, mgrast_release_3_0, mgrast_dev_03252011, rast_rel_2010_0118, mgrast_rel_2008_0924, mgrast_rel_2008_1110_v2, rast_rel_2009_02_05, rast_rel_2011_0119, mgrast_rel_2008_0625, mgrast_release_3_0_4, mgrast_release_3_0_2, mgrast_release_3_0_3, mgrast_release_3_0_1, mgrast_dev_03312011, mgrast_release_3_1_2, mgrast_release_3_1_1, mgrast_release_3_1_0, mgrast_dev_04132011, rast_rel_2008_10_09, mgrast_dev_04012011, rast_release_2008_09_29, mgrast_rel_2008_0806, mgrast_rel_2008_0923, mgrast_rel_2008_0919, rast_rel_2009_07_09, rast_rel_2010_0827, mgrast_rel_2008_1110, myrast_33, rast_rel_2011_0928, rast_rel_2008_09_29, mgrast_rel_2008_0917, rast_rel_2008_10_29, mgrast_dev_04052011, mgrast_dev_02222011, rast_rel_2009_03_26, mgrast_dev_10262011, rast_rel_2008_11_24, rast_rel_2008_08_07, HEAD
Changes since 1.4: +0 -2 lines
Removed obsolete use clauses.

#!/usr/bin/perl -w
#
# Copyright (c) 2003-2006 University of Chicago and Fellowship
# for Interpretations of Genomes. All Rights Reserved.
#
# This file is part of the SEED Toolkit.
# 
# The SEED Toolkit is free software. You can redistribute
# it and/or modify it under the terms of the SEED Toolkit
# Public License. 
#
# You should have received a copy of the SEED Toolkit Public License
# along with this program; if not write to the University of Chicago
# at info@ci.uchicago.edu or the Fellowship for Interpretation of
# Genomes at veronika@thefig.info or download a copy from
# http://www.theseed.org/LICENSE.TXT.
#


=head1 NMDPR Analysis

C<NMPDRAnalysis> [I<options>] I<coreOutputFile> I<supportOutputFile>

Create two files listing genome IDs and names-- one for core NMPDR organisms and
one for the supporting organisms. We essentially run through the list of genomes
and split them according to whether or not they have an NMPDR file in the
organism directory (which indicates they're core).

The method takes two positional parameters.

=over 4

=item coreOutputFile

Name of the output file for the core genomes.

=item supportOutputFile

Name of the output file for the remaining genomes.

=back

The currently-supported command-line options are as follows.

=over 4

=item trace

Numeric trace level. A higher trace level causes more messages to appear. The
default trace level is 2.

=item all

Process all genomes instead of only complete genomes.

=back

=cut

use strict;
use Tracer;
use Cwd;
use File::Copy;
use File::Path;
use FIG;

# Get the command-line options.
my ($options, @parameters) = Tracer::ParseCommand({ trace => 2, all => 0 }, @ARGV);
# Set up tracing.
my $traceLevel = $options->{trace};
TSetup("$traceLevel Tracer FIG", "TEXT");
# Get the FIG object.
my $fig = FIG->new();
# Get the list of genomes we want.
my @genomes = $fig->genomes(! $options->{all});
# Open the two output files.
Open(\*CORE, ">$parameters[0]");
Open(\*SUPPORT, ">$parameters[1]");
# Tell the user what we're doing.
my $count = @genomes;
my ($coreCount, $supportCount) = (0, 0);
Trace("$count genomes found.") if T(2);
# Loop through the genome IDs.
for my $genomeID (@genomes) {
    # Get this genome's name.
    my $name = $fig->genus_species($genomeID);
    # Format the output line.
    my $line = "$genomeID\t$name\n";
    # Look for an NMPDR file.
    if (-e "$FIG_Config::organisms/$genomeID/NMPDR") {
        # Here we have an core genome.
        print CORE $line;
        Trace("$genomeID ($name) is core.") if T(3);
        $coreCount++;
    } else {
        # Here we have a supporting genome.
        print SUPPORT $line;
        Trace("$genomeID ($name) is supporting.") if T(3);
        $supportCount++;
    }
}
# Trace the statistics.
Trace("$coreCount core genomes, $supportCount supporting genomes found.") if T(2);
# Close the output files.
close CORE;
close SUPPORT;

1;

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3