Установите NA и "" Ячейки в R Dataframe в NULL

У меня есть Dataframe в R, где определенные строки в некоторых столбцах имеют значения, которые NA или пустые строки "", Я хочу преобразовать их в NULL ценности.

Поэтому мне нужны все ячейки в моем фрейме данных, которые NA или же "" быть NULL, Как я могу это сделать?

Когда я пытаюсь:

DF[ , DF$Column == NA] <- NULL

или же

DF[ , DF$Column == ""] <- NULL

Я получаю ошибку: missing values are not allowed in subscripted assignments of data frames

Если я попробую:

DF[ , is.na(DF$Column)] <- NULL

Я получаю ошибку: duplicate subscripts for columns

Если я попробую:

is.na(DF$Column) <- NULL

или же

DF[DF == NA] <- NULL

Я не получаю никаких ошибок, но ничего не меняется в моем фрейме данных.

1 ответ

Там действительно нет значения NULL в векторе. NA является заполнителем. Если вы хотите удалить весь столбец (что будет делать присвоение NULL), когда все его значения равны NA, это будет успешно:

df[ , sapply(df, function(x) all(is.na(x)) ) ] <- NULL

Если вы хотите построить объект, в котором вы храните только те строки без значений NA:

df[ apply(df,1, function(rw) !any(is.na(rw)) ) , ]
Другие вопросы по тегам