Với những nguyên liệu đầu vào:Tạo trình tự ADN tổng hợp với Subtitution Rate
my $init_seq = "AAAAAAAAAA" #length 10 bp
my $sub_rate = 0.003;
my $nof_tags = 1000;
my @dna = qw(A C G T);
Tôi muốn tạo:
Một nghìn chiều dài-10 thẻ
tỷ lệ Thay cho mỗi vị trí trong thẻ là 0,003
Sản lượng đầu ra như:
AAAAAAAAAA
AATAACAAAA
.....
AAGGAAAAGA # 1000th tags
Có cách nào nhỏ gọn để làm điều đó trong Perl?
Tôi bị mắc kẹt với logic của kịch bản này là cốt lõi:
#!/usr/bin/perl
my $init_seq = "AAAAAAAAAA" #length 10 bp
my $sub_rate = 0.003;
my $nof_tags = 1000;
my @dna = qw(A C G T);
$i = 0;
while ($i < length($init_seq)) {
$roll = int(rand 4) + 1; # $roll is now an integer between 1 and 4
if ($roll == 1) {$base = A;}
elsif ($roll == 2) {$base = T;}
elsif ($roll == 3) {$base = C;}
elsif ($roll == 4) {$base = G;};
print $base;
}
continue {
$i++;
}
Đây là bài tập về nhà, phải không? : http://birg.cs.wright.edu/resources/perl/hw3.shtml –
Không, Mitch, đây không phải là bài tập về nhà. Quả thật. – neversaint
Bạn có lẽ nên kiểm tra các bản sao. –