Learn R Programming

gbutils (version 0.2-1)

isNA: Check if an object is NA

Description

Check if an object is NA. Always return TRUE of FALSE, a logical vector of length one.

Usage

isNA(x)

Arguments

x

any R object.

Value

TRUE or FALSE

Details

isNA returns TRUE if the argument is a single NA, i.e. it has length one and represents an NA value. In any other case isNA returns FALSE.

isNA is suitable for use in conditional constructs since it always returns a single value which is never NA.

Note that identical() distinguishes different types of NA, i.e. identical(x, NA) is TRUE only if x is NA (logical).

See Also

isTRUE, is.na, identical

Examples

Run this code
# NOT RUN {
v <- c(1, NA, 3)
isNA(v[2]) # TRUE

## identical() distinguishes different types of NA:
class(v) # "numeric", not "integer"

identical(v[2], NA)          # FALSE, NA on its own is "logical"
identical(v[2], NA_integer_) # FALSE
identical(v[2], NA_real_)    # TRUE


vi <- c(1L, NA_integer_, 3L)
isNA(vi[2]) # TRUE

class(vi) # "integer"
identical(vi[2], NA_integer_) # TRUE
identical(vi[2], NA_real_)    # FALSE

## is.na(NULL) would give a warning
isNA(NULL) # FALSE

## a length zero object is not NA, so isNA() returns FALSE:
isNA(logical(0)) # FALSE

## is.na() has a different remit and returns a 0-length vector:
is.na(logical(0))  # logical(0)
# }

Run the code above in your browser using DataLab