我需要绘制随机位置的概率密度,片段长度= 600,基因组大小= 3 × 109,读取次数= 1000万次读取
depth_of_coverage <- function(genome = 3E9, fragment_length = 600, reads = 10E6) {
depth <- 0
for(i in 1:reads){
random_position <- sample(1:genome, 1)
coverage <- sample(1:genome, fragment_length)
depth <- depth + sum(coverage == random_position)
}
return(depth)
}
覆盖深度()
这需要很长的时间来运行...
1条答案
按热度按时间yqkkidmi1#
使用
rbinom()
对二项分布进行抽样:这将比您当前的方法快许多个数量级。