Установите 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)) ) , ]