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


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

В этом руководстве объясняется, как удалить эти строки с помощью Basic 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 можно найти здесь .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *