2017-11-22 20 views
2

私は初めてのRコースをやっています。演習の1つは、1000塩基のランダムなDNAストリングを作成することです。そのためには、GCパーセント (GC%)を計算します。 ランダムな文字列を生成して特定の文字列の割合を計算する方法は?

私はDNA塩基ベクトルを作成し、シーケンスを作成しようとしました、しかし、結果は

DNA <- c("A","G","T","C") 
seq <- strrep(DNA, 250) 

このnoobのための任意の提案は正しくないのですか?

+1

は 'サンプル(DNA、1000年、= TRUEを置き換える)を試してみてください'、あなたは本当にそれが単一の文字列である必要があれば: 'ペースト(サンプル(DNA、1000年、replace = TRUE)、collapse = "") ' – MrFlick

+0

塩基のパーセントをGまたはCと同じにするか、連続するGC塩基でパーセントを求めますか?後者で 'library(stringr);を実行したい場合。 chain < - paste(sample(DNA、1000、replace = T)、collapse = ""); str_count(チェーン、 "GC") ' – eipi10

答えて

6

基本的にはRの非常に基本的な、すなわちsumsamplepasteの機能をチェックアウトする必要があります。解決策は非常に簡単です:ちょうどそれを一緒に貼り、

DNA <- c("A","G","T","C") 
chain <- sample(DNA, 1000, replace = T) 
GCcontent <- sum(chain %in% c('G','C'))/length(chain) 
# chain as a string 
paste(chain, collapse="") 
関連する問題