时间:2021-05-22
方法一(不使用模块,by agonyr)
复制代码 代码如下:
#!/usr/bin/perl -w
use strict;
my @seq = ( "A", "T", "C", "G" );
my $length = 10000;
undef my %hash;
$hash{"A"} = int( $length * 0.3 );
$hash{"C"} = int( $length * 0.3 );
$hash{"G"} = int( $length * 0.2 );
$hash{"T"} = int( $length * 0.2 );
my $i = 0;
while ( $i 《 $length ) {
my $word = $seq[ rand(@seq) ];
if ( $hash{$word} ) {
print "$word";
$i++;
}
$hash{$word}--;
}
print "n";
方法二(使用模块,by yixf)
复制代码 代码如下:
#!/usr/bin/perl
use strict;
use warnings;
use BioX::SeqUtils::RandomSequence;
my $randomizer = BioX::SeqUtils::RandomSequence-》new(
{
l =》 10000,
s =》 1,
y =》 "dna",
a =》 3,
c =》 3,
g =》 2,
t =》 2
}
);
print $randomizer-》rand_seq(), "n";
两种方法比较
设定长度为10000,ACGT的比例为3:3:2:2。
复制代码 代码如下:
withoutModuleLength=10000GC=49.42%A=2558,C=2503,G=2439,T=2500,Others=0
withModuleLength=10000GC=50.00%A=3000,C=3000,G=2000,T=2000,Others=0
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
有时候我们需要使用C++处理bam文件,比如取出read1或者read2等符合特定条件的序列,根据cigar值对序列指定位置的碱基进行统计或者对序列进行处理并输
复制代码代码如下:这个生成的验证码只是单纯的数字,背景填充很简单了只是26根直线填充的。前边看到他是想要4为随机字母加数字的序列,可是后来生成序列的时候却仅仅用
本文实例讲述了Python简单生成随机姓名的方法。分享给大家供大家参考,具体如下:用到random.choice(序列)在一个序列中随机选取一个值#coding
以下是DNA序列,存储在window下F:\perl\data.txt里面:复制代码代码如下:AAAAAAAAAAAAAAGGGGGGGTTTTCCCCCCCC
计算机的随机数都是由伪随机数,即是由小M多项式序列生成的,其中产生每个小序列都有一个初始值,即随机种子。(注意:小M多项式序列的周期是65535,即每次利用一个