AlignDB-Codon
view release on metacpan or search on metacpan
lib/AlignDB/Codon.pm view on Meta::CPAN
'Vertebrate Mitochondrial', # 2
'Yeast Mitochondrial', # 3
'Mold, Protozoan, and Coelenterate Mitochondrial and Mycoplasma/Spiroplasma', # 4
'Invertebrate Mitochondrial', # 5
'Ciliate, Dasycladacean and Hexamita Nuclear', # 6
'', '',
'Echinoderm and Flatworm Mitochondrial', # 9
'Euplotid Nuclear', # 10
'Bacterial, Archaeal and Plant Plastid', # 11
'Alternative Yeast Nuclear', # 12
'Ascidian Mitochondrial', # 13
'Alternative Flatworm Mitochondrial', # 14
'Blepharisma Nuclear', # 15
'Chlorophycean Mitochondrial', # 16
'', '', '', '',
'Trematode Mitochondrial', # 21
'Scenedesmus obliquus Mitochondrial', # 22
'Thraustochytrium Mitochondrial', # 23
'Pterobranchia Mitochondrial', # 24
'Candidate Division SR1 and Gracilibacteria', # 25
);
lib/AlignDB/Codon.pm view on Meta::CPAN
}
}
sub _load_aa_code {
my $self = shift;
my %one2three = (
A => 'Ala', # Alanine
R => 'Arg', # Arginine
N => 'Asn', # Asparagine
D => 'Asp', # Aspartic acid
C => 'Cys', # Cysteine
Q => 'Gln', # Glutamine
E => 'Glu', # Glutamic acid
G => 'Gly', # Glycine
H => 'His', # Histidine
I => 'Ile', # Isoleucine
L => 'Leu', # Leucine
K => 'Lys', # Lysine
M => 'Met', # Methionine
F => 'Phe', # Phenylalanine
P => 'Pro', # Proline
S => 'Ser', # Serine
T => 'Thr', # Threonine
W => 'Trp', # Tryptophan
Y => 'Tyr', # Tyrosine
V => 'Val', # Valine
B => 'Asx', # Aspartic acid or Asparagine
Z => 'Glx', # Glutamine or Glutamic acid
X => 'Xaa', # Any or unknown amino acid
'*' => '***', # Stop codon
);
my %three2one = reverse(%one2three);
$self->{one2three} = \%one2three;
$self->{three2one} = \%three2one;
return;
}
lib/AlignDB/Codon.pm view on Meta::CPAN
$peptide = uc $peptide;
my $three_of = $self->one2three;
my $converted;
for my $pos ( 0 .. length($peptide) - 1 ) {
my $aa_code = substr( $peptide, $pos, 1 );
if ( $three_of->{$aa_code} ) {
$converted .= $three_of->{$aa_code};
}
else {
Carp::confess "Wrong single-letter amino acid code [$aa_code]!\n";
$converted .= ' ' x 3;
}
}
return $converted;
}
sub convert_321 {
my $self = shift;
my $peptide = shift;
lib/AlignDB/Codon.pm view on Meta::CPAN
my $one_of = $self->three2one;
my $converted;
for ( my $pos = 0; $pos < length($peptide); $pos += 3 ) {
my $aa_code = substr( $peptide, $pos, 3 );
$aa_code = ucfirst $aa_code;
if ( $one_of->{$aa_code} ) {
$converted .= $one_of->{$aa_code};
}
else {
warn "Wrong three-letter amino acid code [$aa_code]!\n";
$converted .= ' ' x 3;
}
}
return $converted;
}
1; # Magic true value required at end of module
( run in 0.364 second using v1.01-cache-2.11-cpan-de7293f3b23 )