質問

I am trying to replace all missing value in a column of a data frame. I found the below code:

          df$GROUPE[is.na(df$GROUPE)] <- "OTHER"

However, I am receiving a error message:

       Warning message:
       In `[<-.factor`(`*tmp*`, is.na(df$GROUPE), value = c(NA, 1L, 2L,  :
       invalid factor level, NA generated

Does anybody know how to replace missing values.

Thank you!

役に立ちましたか?

解決

Convert your factor to character then run the previous line again:

df$GROUPE <- as.character(df$GROUPE)

df$GROUPE[is.na(df$GROUPE)] <- "OTHER"

You can refactor the df$GROUPE variable after:

df$GROUPE=as.factor(df$GROUPE)

他のヒント

Apparently your GROUPE column is a factor and does not have a level called "OTHER".

levels(f) <- c(levels(f), "OTHER")

should add it.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top