na.fail {stats} | R Documentation

## Handle Missing Values in Objects

### Description

These generic functions are useful for dealing with `NA`s in e.g., data frames. `na.fail` returns the object if it does not contain any missing values, and signals an error otherwise. `na.omit` returns the object with incomplete cases removed. `na.pass` returns the object unchanged.

### Usage

    na.fail(object, ...)
    na.omit(object, ...)
    na.exclude(object, ...)
    na.pass(object, ...)

### Arguments

`object` | an R object, typically a data frame
`...` | further arguments special methods could require.

### Details

At present these will handle vectors, matrices and data frames comprising vectors and matrices (only).

If `na.omit` removes cases, the row numbers of the cases form the `"na.action"` attribute of the result, of class `"omit"`.

`na.exclude` differs from `na.omit` only in the class of the `"na.action"` attribute of the result, which is `"exclude"`. This gives different behaviour in functions making use of `naresid` and `napredict`: when `na.exclude` is used the residuals and predictions are padded to the correct length by inserting `NA`s for cases omitted by `na.exclude`.

### References

Chambers, J. M. and Hastie, T. J. (1992) Statistical Models in S. Wadsworth & Brooks/Cole.

### See Also

`na.action`; `options` with argument `na.action` for setting NA actions; and `lm` and `glm` for functions using these. `na.contiguous` as alternative for time series.

### Examples

    DF <- data.frame(x = c(1, 2, 3), y = c(0, 10, NA))
    na.omit(DF)
    m <- as.matrix(DF)
    na.omit(m)
    stopifnot(all(na.omit(1:3) == 1:3))  # does not affect objects with no NA's
    try(na.fail(DF))   #> Error: missing values in ...

    options("na.action")

[Package stats version 3.3.2 Index]