\HeaderA{complementSeq}{Complementary sequence.}{complementSeq}
\keyword{manip}{complementSeq}
\begin{Description}\relax
Function to obtain the complementary sequence.
\end{Description}
\begin{Usage}
\begin{verbatim}
complementSeq(seq, start=1, stop=0)
\end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\code{seq}] Character vector consisting of the letters A, C, G and T.
\item[\code{start}] Numeric scalar: the sequence position at which to start
complementing. If 1, start from the beginning.
\item[\code{stop}] Numeric scalar: the sequence position at which to stop
complementing. If 0, go until the end.
\end{ldescription}
\end{Arguments}
\begin{Details}\relax
The complemented sequence for each element of the input is computed and
returned.  The complement is given by the mapping:
A -> T, C -> G, G -> C, T -> A.

An important special case is \code{start=13}, \code{stop=13}:
If \code{seq} is a vector of 25mer sequences on an Affymetrix
GeneChip, \code{complementSeq(seq, start=13, stop=13)}
calculates the so-called \emph{mismatch} sequences.

The function deals only with sequences that represent DNA.
These can consist only of the letters  \code{A}, \code{C}, \code{T}
or \code{G}. Upper, lower or mixed case is allowed and honored.
\end{Details}
\begin{Value}
A character vector of the same length as \code{seq} is
returned. Each component represents the transformed sequence for the
input value.
\end{Value}
\begin{Author}\relax
R. Gentleman, W. Huber
\end{Author}
\begin{SeeAlso}\relax
\code{\LinkA{basecontent}{basecontent}}, \code{\LinkA{reverseSeq}{reverseSeq}}
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
 seq <- c("AAACT", "GGGTT")
 complementSeq(seq)

 seq <- c("CGACTGAGACCAAGACCTACAACAG", "CCCGCATCATCTTTCCTGTGCTCTT")
 complementSeq(seq, start=13, stop=13)
\end{ExampleCode}
\end{Examples}

