\HeaderA{SOMB}{An interface to self-organizing map methods for ExpressionSets}{SOMB}
\aliasA{show,SOMBout-method}{SOMB}{show,SOMBout.Rdash.method}
\aliasA{show,somout-method}{SOMB}{show,somout.Rdash.method}
\aliasA{somB}{SOMB}{somB}
\aliasA{SOMB,ExpressionSet,character-method}{SOMB}{SOMB,ExpressionSet,character.Rdash.method}
\aliasA{somB,ExpressionSet,character-method}{SOMB}{somB,ExpressionSet,character.Rdash.method}
\aliasA{somout-class}{SOMB}{somout.Rdash.class}
\keyword{cluster}{SOMB}
\begin{Description}\relax
Self-organizing maps are covered in various machine learning
reviews.  These can be viewed as clustering procedures
analogous to \code{\LinkA{kmeans}{kmeans}} but with a constraint
on the complexity of the subspace in which the cluster-defining
prototypes are identified.

The outputs of \code{\LinkA{som}{som}} and \code{\LinkA{SOM}{SOM}} are
not easily formulated as \code{\LinkA{clustOutput-class}{clustOutput.Rdash.class}} instances,
so classes that extend \code{list} are used as output containers.

SOMB(exprObj, classifLab)
somB(exprObj, classifLab)
\end{Description}
\begin{Arguments}
\begin{ldescription}
\item[\code{exprObj}] An instance of the \code{ExpressionSet} class. 
\item[\code{classifLab}] A vector of class labels. 
\end{ldescription}
\end{Arguments}
\begin{Details}\relax
You may pass additional parameters, see \code{\LinkA{SOM}{SOM}}
or \code{\LinkA{som}{som}} for details.
\end{Details}
\begin{Value}
An object of class \code{SOMBoutput} or \code{somBoutput}
\end{Value}
\begin{Author}\relax
Jess Mar, VJ Carey <stvjc@channing.harvard.edu>
\end{Author}
\begin{Examples}
\begin{ExampleCode}
# access and trim an ExpressionSet
library(golubEsets)
data(Golub_Merge)
smallG <- Golub_Merge[1:60,]
# set a PRNG seed for reproducibilitiy
set.seed(1234) # needed for nnet initialization
# now run the classifiers
#somB( smallG, "ALL.AML", 3)
SOMB( smallG, "ALL.AML", 3)
\end{ExampleCode}
\end{Examples}

