How to replace values in a column in R

· 1 min read · Updated March 14, 2026 · beginner
r replacement dplyr data.table

Replace values in data frame columns with these common approaches.

With dplyr

Use mutate() with ifelse() or case_when():

library(dplyr)

# Simple replacement
df <- df \%>\% mutate(status = ifelse(status == "active", 1, 0))

# Multiple conditions
df <- df \%>\% mutate(
  grade = case_when(score >= 90 ~ "A", score >= 80 ~ "B", TRUE ~ "C")
)

With base R

# Using ifelse
df$status <- ifelse(df$status == "active", 1, 0)

# Using subsetting
df$status[df$status == "active"] <- 1

With data.table

library(data.table)
dt <- data.table(df)
dt[status == "active", status := 1]

Replace NA values

library(dplyr)
df <- df \%>\% mutate(price = coalesce(price, 0))
``"

## See Also

- [ifelse()](/reference/base-functions/ifelse)
- [mutate()](/reference/tidyverse/dplyr-mutate)