我有一個DNA序列列表,我想混合這些內容。
假設dna_lst:
R中DNA(列表)的混合內容
[1] AATTAATTCC
[2] ATCGATCG
[3] TTTAACCCCCGG
我要生成混合DNA含量,如:dna_mix:
[1] TACAATTACT
[2] CATGCTAG
[3] CCTGATCTCGAC
我怎麼能做到這一點的R'
謝謝。
我有一個DNA序列列表,我想混合這些內容。
假設dna_lst:
R中DNA(列表)的混合內容
[1] AATTAATTCC
[2] ATCGATCG
[3] TTTAACCCCCGG
我要生成混合DNA含量,如:dna_mix:
[1] TACAATTACT
[2] CATGCTAG
[3] CCTGATCTCGAC
我怎麼能做到這一點的R'
謝謝。
類似的東西:如果你想要什麼
dna_mix<-sapply(dna_lst,function(dna){paste(sample(strsplit(dna,"")[[1]]),collapse="")})
可以工作是一個「隨機混合」
> dna_mix
AATTAATTCC ATCGATCG TTTAACCCCCGG
"TTTATCAAAC" "TAACCGGT" "CTACTCACGGTC"
與因素的列表(如果每個序列是列表的元素) :
lapply(dna_lst,function(dna){paste(sample(strsplit(as.character(dna),"")[[1]]),collapse="")})
應該工作。
一種可能性:
sapply(strsplit(as.character(dna_lst), ""), function(x) paste(sample(x), collapse = ""))
我收到錯誤'錯誤在sapply(strsplit(dna_lst,「」),函數(x)粘貼(樣本(x),崩潰=「」)): 錯誤評估參數'X'在選擇方法函數'sapply':錯誤strsplit(dna,「」):非字符參數'我正在使用因子列表。我的數據集非常龐大。我轉換爲字符,並再次出現相同的錯誤 – Cina 2014-11-25 09:53:23
@Cina查看更新。 – 2014-11-25 10:07:49
是混合是隨機的? – 2014-11-25 09:18:43
@DavidArenburg是的,隨機混合。但它必須保持內容的比例。 – Cina 2014-11-25 09:36:11
不知道什麼是內容的比例。此外,您的數據集 – 2014-11-25 09:37:22