[Rio-pm] [DÚVIDA]Hash: varias key pra um mesmo value
Aureliano Guedes
guedes_1000 em hotmail.com
Terça Abril 12 17:24:53 PDT 2016
Ola monges,
Eu tenho uma dúvida, caso possam me ajudar.Eu tenho varias códigos que acessam o mesmo valor (no caso que uso são vários códons que traduzem o mesmo aminoácido).
Exemplo:
Aminoacido -> Códons
Sendo os aminoácidos representados por 20 letras diferentes mais o X (stop códon).
E os codons, combinações de 3 nucleotídeos, sendo um total de 4 nucleotídeos (A, T, C e G), logo temos 64 combinações de 3 nucleotídeos (64 codons possíveis).Por isso um mesmo aminoácido pode ser codificado por mais de um códon.
No caso do aminoácido Alanina (Ala || A) é códificado pelos códons GCA, GCC, GCT ou GCU. Observe que os dois primeiros nucleotídeos são C e G, respectivamente, e o terceiro pode ser ocupado por qualquer um dos 4 nucleotídeo possíveis.
Dessa forma:A -> CGA ou CGC ou CGT ou CGGOutros:
F -> TTC || TTTL -> TTA || TTG || CTA || CTG || CTC || CTT
Bom, meu objetivo é simplesmente criar um hash, como esse:
my %aa = ( "UUU" => "F", "UUC" => "F", "UUA" => "L", "UUG" => "L", "UCU" => "S", "UCC" => "S", "UCA" => "S", "UCG" => "S", "UAU" => "Y", "UAC" => "Y", "UAA" => "X", "UAG" => "X", "UGU" => "C", "UGC" => "C", "UGA" => "X", "UGG" => "W", "CUU" => "L", "CUC" => "L", "CUA" => "L", "CUG" => "L", "CCU" => "P", "CCC" => "P", "CCA" => "P", "CCG" => "P", "CAU" => "H", "CAC" => "H", "CAA" => "Q", "CAG" => "Q", "CGU" => "R", "CGC" => "R", "CGA" => "R", "CGG" => "R", "AUU" => "I", "AUC" => "I", "AUA" => "I", "AUG" => "M", "ACU" => "T", "ACC" => "T", "ACA" => "T", "ACG" => "T", "AAU" => "N", "AAC" => "N", "AAA" => "K", "AAG" => "K", "AGU" => "S", "AGC" => "S", "AGA" => "R", "AGG" => "R", "GUU" => "V", "GUC" => "V", "GUA" => "V", "GUG" => "V", "GCU" => "A", "GCC" => "A", "GCA" => "A", "GCG" => "A", "GAU" => "D", "GAC" => "D", "GAA" => "E", "GAG" => "E", "GGU" => "G", "GGC" => "G", "GGA" => "G", "GGG" => "G",);
Contudo pensei em tomar outra abordagem, informar pra chave quem ela pode ser. Não sei se é possível, mas eu comecei tentando algo como:my %codon = ( "CG"./[ACTG]/ => "A", "TT"./[CT]/ => "F", ("TT"./[AG]/||"CU"./[ACTG]/) => "L",);Mas não funcionou.
Pensei em pegar uma abordagem mais IUPAC, onde:Y = C ou TR = A ou GN = A, C, G ou T*tem outros, mas por enquanto apenas estou vendo a possibilidade.
Então fiz:
my $Y = /[CT]/;my $R = /[AG]/;my $N = /[ACTG]/;
my %codon = ( "CG".$N => "A", "TT".$Y => "F", ("TT".$R||"CU".$N) => "L",);Mas não funcionou.
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/rio-pm/attachments/20160413/dfc4bc66/attachment.html>
Mais detalhes sobre a lista de discussão Rio-pm