# R – Remove NA Values From a List

Missing values in R are represented by NA. When working with lists in R, it can be handy to know how to handle and remove such values from the list. In this tutorial, we will look at how to remove NA values from a list in R with the help of some examples.

## How to remove NA values from a list in R?

You can use the `is.na()` function to identify and remove the NA values from a list in R. Use the `!is.na()` expression to identify the non-NA values in the list and then use the resulting logical index to filter out the NA values. The following is the syntax –

```# remove NA values from list
ls <- ls[!na.rm(ls)]```

It returns a new list with the NA values removed.

## Examples

Let’s now look at some examples of using the above method to remove NA values from a list.

### Remove NA values from a list

First, let’s create a list of some numbers along with some NA values. Then, we will remove the missing values (NA values) using the syntax from above.

Highlighted programs for you

Flatiron School

Flatiron School

Data Science Bootcamp
Product Design UX/UI Bootcamp

University of Maryland Global Campus

University of Maryland Global Campus

Cloud Computing Systems Master's
Digital Forensics & Cyber Investigation Master's

Creighton University

Creighton University

Health Informatics Master's

```# create a list
ls <- list(1, 2, NA, 3, 4, NA, NA)
# remove NA values from ls
ls <- ls[!is.na(ls)]
# display the list
print(ls)```

Output:

```[]
 1

[]
 2

[]
 3

[]
 4```

The resulting list does not have any NA values. Here, we use the expression `!is.na(ls)` to identify the non-NA values in the list. We then use the result from this expression as a logical index to filter the list and thus we get the list with the NA values removed.

Let’s now look at another example. This time we’ll create a list with no NA values and apply the same method.

```# create a list
ls <- list(1, 2, 3, 4)
# remove NA values from ls
ls <- ls[!is.na(ls)]
# display the list
print(ls)```

Output:

```[]
 1

[]
 2

[]
 3

[]
 4```

You can see that we get the original list as the output since there were no NA values to remove in this list.

You might also be interested in –

• 