在R中生成字符序列

时间:2018-07-30 16:17:15

标签: sample

使用R代码:

library(pegas)
nucl <- as.DNAbin(c("a", "c", "g", "t"))
seq.gen <- function() {
res <- sample(nucl, size = length.seqs, replace = TRUE, prob = rep(0.25, 4))
}

res <- matrix(rep(seq.gen(), num.seqs), byrow = TRUE, nrow = num.seqs)
class(res) <- "DNAbin"

让我们说上面的代码生成了以下两个个体(Ind 1和Ind 2),每个个体都共享DNA序列AGGCTA(长度= 6)。

Ind 1     AGGCTA
Ind 2     AGGCTA

我现在想以某种概率(例如alpha)将一些Gs和一些Cs更改为Ts,并以其他某种概率将某些As更改为Cs,As Ts,Gs更改为Cs和将Gs更改为Ts(例如,beta),这样Ind 1和Ind 2就会有不同的序列,并且在长度上的某些位置对于两个人都是相同的。

是否有一个很好的,干净的方法可以对sample()执行此操作?

0 个答案:

没有答案