\Header{NA}{Not Available / ``Missing'' Values}
\alias{is.na}{NA}
\methalias{is.na.data.frame}{NA}
\alias{is.na<\Rdash}{NA}
\methalias{is.na<\Rdash.default}{NA}
\keyword{NA}{NA}
\keyword{logic}{NA}
\keyword{manip}{NA}
\begin{Description}\relax
\code{NA} is a logical constant of length 1 which contains
a missing value indicator.  \code{NA} can be freely coerced to any
other vector type.

The generic function \code{is.na} returns a logical vector
of the same ``form'' as its argument \code{x}, containing \code{TRUE}
for those elements marked \code{NA} or \code{\Link{NaN}} (!)
and \code{FALSE} otherwise.
\code{dim}, \code{dimnames} and \code{names} attributes are preserved.

The generic function \code{is.na<-} sets elements to \code{NA}.\end{Description}
\begin{Usage}
\begin{verbatim}
NA
is.na(x)
is.na.data.frame(x)

is.na(x) <- value
\end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\code{x}] an \R{} object to be tested.
\item[\code{value}] a suitable index vector for use with \code{x}.
\end{ldescription}
\end{Arguments}
\begin{Details}\relax
For character vectors the value \code{"NA"} represents missingness.

\code{is.na(x)} works elementwise when \code{x} is a \code{\Link{list}}.
The method dispatching is C-internal, rather than via
\code{\Link{UseMethod}}.

Function \code{is.na<-} may provide a safer way to set missingness.
It behaves differently for factors, for example.\end{Details}
\begin{SeeAlso}\relax
\code{\Link{NaN}}, \code{\Link{is.nan}}, etc.
and the utility function \code{\Link{complete.cases}}.

\code{\Link{na.action}}, \code{\Link{na.omit}}, \code{\Link{na.fail}}
on how methods can be tuned to deal with missing values.\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
is.na(c(1,NA))       #> F TRUE
is.na(paste(c(1,NA)))#> F FALSE

\end{ExampleCode}
\end{Examples}

