# How to Replace Zero with NA in R (With Examples)

You can use the following methods to replace zero with NA values in R:

Method 1: Replace Zero with NA in All Columns

```df[df == 0] <- NA
```

Method 2: Replace Zero with NA in One Column

`df\$col1[df\$col1 == 0] <- NA`

Method 3: Replace Zero with NA in Several Specific Columns

`df[, c('col1', 'col2')][df[, c('col1', 'col2')] == 0] <- NA`

The following examples show how to use each method in practice with the following data frame:

```#create data frame
df <- data.frame(player=c('A', 'B', 'C', 'D', 'E'),
pts=c(17, 12, NA, 9, 25),
rebs=c(3, 3, NA, NA, 8),
blocks=c(1, 1, 2, 4, NA))

#view data frame
df

player pts rebs blocks
1      A  17    3      1
2      B  12    3      1
3      C  NA   NA      2
4      D   9   NA      4
5      E  25    8     NA
```

## Example 1: Replace Zero with NA in All Columns

The following code shows how to replace zeros with NA values in all columns of a data frame:

```#replace zero with NA in all columns
df[df == 0] <- NA

#view updated data frame
df

player pts rebs blocks
1      A  17    3      1
2      B  12    3      1
3      C  NA   NA      2
4      D   9   NA      4
5      E  25    8     NA
```

Notice that the zeros have been replaced with NA values in every column of the data frame.

## Example 2: Replace Zero with NA in One Column

The following code shows how to replace zero with NA values in one column of a data frame:

```#replace zero with NA in 'rebs' column only
df\$rebs[df\$rebs == 0] <- NA

#view data frame
player pts rebs blocks
1      A  17    3      1
2      B  12    3      1
3      C   0   NA      2
4      D   9   NA      4
5      E  25    8      0```

Notice that each zero has been replaced with NA in the ‘rebs’ column while all other columns have remained unchanged.

## Example 3: Replace Zero with NA in Several Specific Columns

The following code shows how to replace zero with NA values in several specific columns of a data frame:

```#replace zero with NA values in 'pts' and 'rebs' columns only
df[, c('pts', 'rebs')][df[, c('pts', 'rebs')] == 0] <- NA

#view data frame
df

player pts rebs blocks
1      A  17    3      1
2      B  12    3      1
3      C  NA   NA      2
4      D   9   NA      4
5      E  25    8      0```

Notice that each zero has been replaced with NA in the ‘pts’ and ‘rebs’ columns while the ‘blocks’ column has remained unchanged.

## Additional Resources

The following tutorials explain how to perform other common tasks in R:

May 13, 2024
April 25, 2024
April 19, 2024
April 18, 2024