У меня есть скрипт perl, но он вычисляет молекулярную массу только при задании последовательности. Однако я хочу рассчитать молекулярную массу белковых последовательностей, которая находится в файле fasta.расчет молекулярной массы в perl
print "Enter the amino acid sequence:\n";
$a = <STDIN> ;
chomp($a);
my @a =();
my $a = '';
$x = length($a);
print "Length of sequence is : $x";
@a = split('', $a);
$b = 0;
my %data = (
A=>71.09, R=>16.19, D=>114.11, N=>115.09,
C=>103.15, E=>129.12, Q=>128.14, G=>57.05,
H=>137.14, I=>113.16, L=>113.16, K=>128.17,
M=>131.19, F=>147.18, P=>97.12, S=>87.08,
T=>101.11, W=>186.12, Y=>163.18, V=>99.14
);
foreach $i(@a) {
$b += $data{$i};
}
$c = $b - (18 * ($x - 1));
print "\nThe molecular weight of the sequence is $c";
Возможно, вы захотите отформатировать код немного лучше, чтобы помочь нам его прочитать. Посмотрите, как здесь: http://stackoverflow.com/help/formatting –
Помогает ли это также http://stackoverflow.com/questions/9748858/reading-fasta-sequences-to-extract-nucleotide-data-and- затем-писать-на-табд? –
В чем ваш вопрос? – ruakh