\HeaderA{normalize}{Normalization on Affymetrix Probe Level Data or on Expression Levels}{normalize}
\methaliasA{normalize.constant}{normalize}{normalize.constant}
\methaliasA{normalize.lowess}{normalize}{normalize.lowess}
\methaliasA{normalize.quantiles}{normalize}{normalize.quantiles}
\methaliasA{normalize.supsmu}{normalize}{normalize.supsmu}
\aliasA{xpsNormalize}{normalize}{xpsNormalize}
\aliasA{xpsNormalize-methods}{normalize}{xpsNormalize.Rdash.methods}
\keyword{manip}{normalize}
\begin{Description}\relax
Functions that allow to normalize Affymetrix arrays both at the probe level
(\dQuote{low-level normalization}) and/or at the expression level
(\dQuote{high-level normalization}).
\end{Description}
\begin{Usage}
\begin{verbatim}
normalize(xps.data, filename = character(0), filedir = getwd(), tmpdir = "", update = FALSE, select = "all", method = "mean", option = "transcript:all", logbase = "0", exonlevel = "", refindex = 0, refmethod = "mean", params = list(0.02, 0), add.data = TRUE, verbose = TRUE)

normalize.constant(xps.data, filename = character(0), filedir = getwd(), tmpdir = "", update = FALSE, method = "mean", logbase = "0", exonlevel = "", refindex = 0, refmethod = "mean", params = list(0.02, 0), add.data = TRUE, verbose = TRUE)

normalize.lowess(xps.data, filename = character(0), filedir = getwd(), tmpdir = "", update = FALSE, logbase = "log2", exonlevel = "", refindex = 0, refmethod = "mean", params = list(0.67, 3), add.data = TRUE, verbose = TRUE)

normalize.quantiles(xps.data, filename = character(0), filedir = getwd(), tmpdir = "", update = FALSE, exonlevel = "", add.data = TRUE, verbose = TRUE)

normalize.supsmu(xps.data, filename = character(0), filedir = getwd(), tmpdir = "", update = FALSE, logbase = "log2", exonlevel = "", refindex = 0, refmethod = "mean", params = list(0.67, 3), add.data = TRUE, verbose = TRUE)

xpsNormalize(object, ...)
\end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\code{xps.data}] object of class \code{DataTreeSet} or \code{\LinkA{ExprTreeSet}{ExprTreeSet}}.
\item[\code{filename}] file name of ROOT data file.
\item[\code{filedir}] system directory where ROOT data file should be stored.
\item[\code{tmpdir}] optional temporary directory where temporary ROOT files should be stored.
\item[\code{update}] logical. If \code{TRUE} the existing ROOT data file \code{filename} will be updated.
\item[\code{select}] type of probes to select for normalization.
\item[\code{method}] normalization method to use.
\item[\code{option}] option determining the grouping of probes for normalization, and the selection
of the probes.
\item[\code{logbase}] logarithm base as character, one of \sQuote{0}, \sQuote{log},
\sQuote{log2}, \sQuote{log10}.
\item[\code{exonlevel}] exon annotation level determining which probes should be used
for summarization; exon/genome arrays only.
\item[\code{refindex}] index of reference tree to use, or 0.
\item[\code{refmethod}] for \code{refindex=0}, either trimmed mean or median of trees.
\item[\code{params}] vector of parameters for normalization method.
\item[\code{add.data}] logical. If \code{TRUE} expression data will be included as slot \code{data}.
\item[\code{verbose}] logical, if \code{TRUE} print status information.
\item[\code{object}] object of class \code{DataTreeSet} or \code{\LinkA{ExprTreeSet}{ExprTreeSet}}.
\item[\code{...}] the arguments described above.
\end{ldescription}
\end{Arguments}
\begin{Details}\relax
Functions that allow to normalize Affymetrix arrays both at the probe level
(\dQuote{low-level normalization}) and/or at the expression level
(\dQuote{high-level normalization}).

\code{xpsNormalize} are the \code{DataTreeSet} or \code{\LinkA{ExprTreeSet}{ExprTreeSet}} methods,
respectively, called by function \code{normalize}, containing the same parameters.
\end{Details}
\begin{Value}
An object of type \code{\LinkA{DataTreeSet}{DataTreeSet}} or \code{\LinkA{ExprTreeSet}{ExprTreeSet}}.
\end{Value}
\begin{Section}{Warning}
Functions \code{normalize.lowess} and \code{normalize.supsmu} have only be tested
for \code{object}s of type \code{\LinkA{ExprTreeSet}{ExprTreeSet}} but not for objects of type 
\code{\LinkA{DataTreeSet}{DataTreeSet}}, i.e. for probe level intensities.
\end{Section}
\begin{Author}\relax
Christian Stratowa
\end{Author}
\begin{SeeAlso}\relax
\code{\LinkA{express}{express}}
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
## first, load ROOT scheme file and ROOT data file
scheme.test3 <- root.scheme(paste(.path.package("xps"),"schemes/SchemeTest3.root",sep="/"))
data.test3 <- root.data(scheme.test3, paste(.path.package("xps"),"rootdata/DataTest3_cel.root",sep="/"))

## RMA background
data.bg.rma <- bgcorrect.rma(data.test3,"tmp_Test3NormRMA",filedir=getwd(),tmpdir="",verbose=FALSE)
## normalize quantiles
data.qu.rma <- normalize.quantiles(data.bg.rma,"tmp_Test3NormRMA",filedir=getwd(),tmpdir="",update=TRUE,verbose=FALSE)
## summarize medianpolish
data.mp.rma <- summarize.rma(data.qu.rma,"tmp_Test3NormRMA",filedir=getwd(),tmpdir="",update=TRUE,verbose=FALSE)
\end{ExampleCode}
\end{Examples}

