\HeaderA{numeric}{Numeric Vectors}{numeric}
\aliasA{as.numeric}{numeric}{as.numeric}
\aliasA{is.numeric}{numeric}{is.numeric}
\methaliasA{is.numeric.factor}{numeric}{is.numeric.factor}
\keyword{classes}{numeric}
\keyword{attribute}{numeric}
\begin{Description}\relax
Creates or tests for objects of type \code{"numeric"}.
\end{Description}
\begin{Usage}
\begin{verbatim}
numeric(length = 0)
as.numeric(x, ...)
is.numeric(x)
\end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\code{length}] desired length.
\item[\code{x}] object to be coerced or tested.
\item[\code{...}] further arguments passed to or from other methods.
\end{ldescription}
\end{Arguments}
\begin{Details}\relax
\code{as.numeric} is a generic function, but methods must be
written for \code{\LinkA{as.double}{as.double}}, which it calls.

\code{is.numeric} is generic: you can write methods to handle
specific classes of objects, see \LinkA{InternalMethods}{InternalMethods}.
\\
Note that \code{is.numeric()} returns \code{FALSE} for a factor via its
\code{"factor"} method.
\end{Details}
\begin{Value}
\code{numeric} creates a real vector of the specified length.  The
elements of the vector are all equal to \code{0}.

\code{as.numeric} attempts to coerce its argument to a numeric \LinkA{type}{type}
(either \code{"integer"} or \code{"double"}).
\code{as.numeric} for factors yields the codes underlying the factor
levels, not the numeric representation of the labels, see also
\code{\LinkA{factor}{factor}}.

\code{is.numeric} returns \code{TRUE} if its argument is of
\LinkA{mode}{mode} \code{"numeric"} (\LinkA{type}{type} \code{"double"} or type
\code{"integer"}) and not a factor, and \code{FALSE} otherwise.
\end{Value}
\begin{Note}\relax
\emph{\R{} has no single precision data type.  All real numbers are
stored in double precision format}.
\end{Note}
\begin{References}\relax
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988)
\emph{The New S Language}.
Wadsworth \& Brooks/Cole.
\end{References}
\begin{Examples}
\begin{ExampleCode}
as.numeric(c("-.1"," 2.7 ","B")) # (-0.1, 2.7, NA)  +  warning
as.numeric(factor(5:10))
\end{ExampleCode}
\end{Examples}

