Как удалить строки с некоторыми или всеми NA в R


Часто вам может понадобиться удалить строки со всеми или некоторыми NA (отсутствующими значениями) во фрейме данных в R.

В этом руководстве объясняется, как удалить эти строки с помощью базы R и пакета tidyr.Мы будем использовать следующий фрейм данных для каждого из следующих примеров:

#create data frame with some missing values
df <- data.frame(points = c(12, NA, 19, 22, 32),
 assists = c(4, NA, 3, NA, 5),
 rebounds = c(5, NA, 7, 12, NA))

#view data frame
df

 points assists rebounds
1 12 4 5
2 NA NA NA
3 19 3 7
4 22 NA 12
5 32 5 NA

Удалить NA с помощью Base R

В следующем коде показано, как использовать complete.cases() для удаления всех строк во фрейме данных, в которых отсутствует значение в каком -либо столбце:

#remove all rows with a missing value in *any* column
df[ complete.cases(df), ]

 points assists rebounds
1 12 4 5
3 19 3 7

В следующем коде показано, как использовать complete.cases() для удаления всех строк во фрейме данных, в которых отсутствуют значения в определенных столбцах:

#remove all rows with a missing value in the *third* column
df[ complete.cases(df[ , 3]),]

 points assists rebounds
1 12 4 5
3 19 3 7
4 22 NA 12

#remove all rows with a missing value in either the *first* or *third* column
df[ complete.cases(df[ , c(1,3)]),]

 points assists rebounds
1 12 4 5
3 19 3 7
4 22 NA 12

Удаление NA с помощью Tidyr

В следующем коде показано, как использовать drop_na() из пакета tidyr для удаления всех строк во фрейме данных, в которых отсутствует значение в каком -либо столбце:

#load tidyr package
library(tidyr)

#remove all rows with a missing value in *any* column
df %>% drop_na()

 points assists rebounds
1 12 4 5
3 19 3 7

В следующем коде показано, как использовать drop_na() из пакета tidyr для удаления всех строк во фрейме данных, в которых отсутствуют значения в определенных столбцах:

#load tidyr package
library(tidyr)

#remove all rows with a missing value in the *third* column
df %>% drop_na(rebounds)

 points assists rebounds
1 12 4 5
3 19 3 7
4 22 NA 12

Вы можете найти больше руководств по R здесь .

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.