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

View of /FigKernelScripts/FFB2_get_prot_gs_oligos.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (download) (as text) (annotate)
Mon Nov 16 21:52:22 2009 UTC (10 years 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
new scripts for updating FIGfams and Kmer tables

########################################################################

use strict;

my($ln,$seq,$prots_by_genomeD);
(
 ($prots_by_genomeD = shift @ARGV) && (-d $prots_by_genomeD) &&
 ($ln = shift @ARGV)
)
    || die "usage: FFB2_get_prot_gs_oligos ProtsByGenome K";

opendir(PROTS,$prots_by_genomeD) || die "could not open $prots_by_genomeD";
my @sets = grep { $_ =~ /^\d+$/ } readdir(PROTS);
closedir(PROTS);

$/ = "\n>";
foreach my $set (sort { $a <=> $b } @sets)
{
    open(IN,"<$prots_by_genomeD/$set") || die $set;
    while (defined($_ = <IN>))
    {
        if ($_ =~ /^>?\S+\s+(.*)/s)
        {
            $seq = $1;
            $seq =~ s/\s//g;
            my $i;
            my $n = length($seq);
            for ($i=0; ($i < ($n - $ln)); $i++)
            {
                my $oligo = uc substr($seq,$i,$ln);
                if ($oligo =~ /^[ACDEFGHIKLMNPQRSTVWY]+$/)
                {   
                    print join("\t",($oligo,$set)),"\n";
                }
            }
        }
    }
    close(IN);
}

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3