\name{randomSeq} \alias{randomSeq} \alias{shuffleSeq} \title{Create random sequence} \description{ Function \emph{ randomSeq} creates a random sequence from a distribution of nulcleotides, of poly-nucleotides. A real composition of nucleotides can be use from function \emph{ compoSeq}, with param \code{ p=TRUE}. ShuffleSeq creates a sequence while assembling at random specific number of each nucleotides (or poly-nucleotides). These number of nucleotide can be provided by function \emph{ compoSeq}, with param \code{p=FALSE}: it is then a re-assemblage of all nucleotides (or tri-nucleotides, or poly-nucleotides) of a real sequence. } \usage{ randomSeq(prob = c(0.25, 0.25, 0.25, 0.25, 0), letters = c("T", "C", "A", "G", "N"), n ) shuffleSeq(count,letters=c("T","C","A","G","N")) } %- maybe also 'usage' for other objects documented here. \arguments{ \item{prob}{A vector of probability weights for obtaining the elements of the vector being sampled or a result from compoSeq function (with option p=TRUE.} \item{count}{A vector of number of repetitions for each letters (or bi-tri nucleotides, must be of same length as letters) or a result from compoSeq function (with option p=FALSE).} \item{letters}{Letters (or bi-tri nucleotides) to be sampled} \item{n}{Integer giving the number of items to choose.} } \value{ A character string (sequence) or NULL. } \author{A. Lucas} \seealso{\code{\link{compoSeq}}} \examples{ ## Set seed of your choice (not requiered) set.seed(3) #### ---- RANDOMSEQ ---- ## Create a sequence of size 30, GC rich randomSeq(prob = c(0.20, 0.30, 0.20, 0.30), letters = c("T", "C","A", "G"), n = 30) ## [1] "CTGGAACCGAGGGGTTCATCCCCCCAGTGA" ## use with bi-nucleotides randomSeq(prob=rep(0.0625,16),letters = c("TT","TC","TA","TG","CT","CC","CA","CG","AT","AC","AA","AG","GT","GC","GA","GG"),n=10) ## [1] "CGCATGATCCCAGGCTAACT" #### ---- SHUFFLESEQ ---- ## Create a sequence with 7 T, 3 C and A, and 4 G. shuffleSeq(count=c(7,3,3,4,0),letters=c("T","C","A","G","N")) ## [1] "TATCTTTTGTCGGACGA" ## Same with bi-nucleotides shuffleSeq(count=c(rep(4,4),rep(2,4),rep(1,4),rep(0,4)),letters = c("TT","TC","TA","TG","CT","CC","CA","CG","AT","AC","AA","AG","GT","GC","GA","GG")) ## [1] "TCTTTCCATTCCTTCTAGTGTACCCGTATACGTGTCTGTGTACTTCAACAACTTAT" ## From a real sequence: seqNcbi("BY608190",file="BY608190.fa") readFasta("BY608190.fa") ## create a random sequence from a real tri-nucleotides distribution ## Size of sequence will be 10*3. randomSeq(compoSeq(wsize=3,p=TRUE),n=10) ## re assemble real tri-nucleotides of a real sequence shuffleSeq(compoSeq(wsize=3,from=1,to=30,p=FALSE)) } \keyword{utilities}