I have a data frame and some columns have NA
values.
How do I replace these NA
values with zeroes?
If we are trying to replace NA
s when exporting, for example when writing to csv, then we can use:
write.csv(data, "data.csv", na = "0")
If you want to replace NAs in factor variables, this might be useful:
n <- length(levels(data.vector))+1
data.vector <- as.numeric(data.vector)
data.vector[is.na(data.vector)] <- n
data.vector <- as.factor(data.vector)
levels(data.vector) <- c("level1","level2",...,"leveln", "NAlevel")
It transforms a factor-vector into a numeric vector and adds another artifical numeric factor level, which is then transformed back to a factor-vector with one extra "NA-level" of your choice.