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

View of /FigKernelScripts/svr_fig_id_corr.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.4 - (download) (as text) (annotate)
Thu Dec 10 23:17:56 2009 UTC (9 years, 11 months ago) by overbeek
Branch: MAIN
CVS Tags: mgrast_dev_08112011, mgrast_dev_08022011, rast_rel_2014_0912, myrast_rel40, mgrast_dev_05262011, mgrast_dev_04082011, rast_rel_2010_0928, mgrast_version_3_2, mgrast_dev_12152011, mgrast_dev_06072011, 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, rast_rel_2011_0119, 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, mgrast_dev_04012011, rast_rel_2010_0827, myrast_33, rast_rel_2011_0928, mgrast_dev_04052011, mgrast_dev_02222011, mgrast_dev_10262011, HEAD
Changes since 1.3: +1 -0 lines
add -precise option

use SeedEnv;
use strict;
use Data::Dumper;

my $usage = "usage: svr_fig_id_corr [-external] [-precise]";
my $ext = 0;
my $precise = 0;
foreach $_ (@ARGV)
{
    if ($_ =~ /^-e/i)
    {
	print STDERR "keeping only entries that include external references\n";
	$ext = 1;
    }
    elsif ($_ =~ /^-p/)
    {
	print STDERR "keeping only precise equivalences (same genome)\n";
	$precise = 1;
    }
}
my $sapO = new SAPserver;
my $genomeH = $sapO->all_genomes(-complete => 1);
my %seen;
foreach my $genome (sort { $a <=> $b } keys(%$genomeH))
{
#   print STDERR "$genome\n";
    my $featureH = $sapO->all_features(-ids => [$genome], -type => 'peg');
    my $pegs     = $featureH->{$genome};
    my $setsH    = $sapO->equiv_sequence_ids(-ids => $pegs, -precise => $precise);
    foreach my $peg (@$pegs)
    {
	my $set = $setsH->{$peg};
	my @fig = sort { &SeedUtils::by_fig_id($a,$b) } grep { $_ =~ /^fig\|/ } @$set;
	my @non = sort grep { $_ !~ /^fig\|/ } @$set;
	if (! $seen{$fig[0]})
	{
	    if (@fig >= 2)
	    {
		$seen{$fig[0]} = 1;
	    }
	    if ((! $ext) || (@non > 0))
	    {
		print join(",",@fig), "\t", join(",",@non), "\n";
	    }
	}
    }
}

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3