A: подсчитайте количество значений na в каждом столбце
Вы можете использовать следующие методы для подсчета количества значений NA в каждом столбце фрейма данных в R:
Способ 1: подсчитайте значения NA в каждом столбце, используя основание R.
sapply(df, function (x) sum(is. na (x)))
Способ 2: подсчитайте значения NA в каждом столбце с помощью dplyr
library (dplyr) df %>% summarise(across(everything(), ~ sum(is. na (.))))
В следующих примерах показано, как использовать каждый метод со следующим фреймом данных в R:
#create data frame df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'), points=c(99, 90, 86, 88, NA), assists=c(33, NA, NA, 39, 34), rebounds=c(30, 28, 24, 24, 28)) #view data frame df team points assists rebounds 1 A 99 33 30 2 B 90 NA 28 3 C 86 NA 24 4 D 88 39 24 5 E NA 34 28
Пример 1. Подсчитайте значения NA в каждом столбце, используя основание R.
Следующий код показывает, как подсчитать количество значений NA в каждом столбце с помощью базовой функции sapply() R:
#count NA values in each column sapply(df, function (x) sum(is. na (x))) team points assists rebounds 0 1 2 0
По результату мы видим:
- Столбец команды имеет 0 значений NA.
- Столбец баллов имеет 1 значение NA.
- Столбец передач имеет 2 значения NA.
- Столбец отказов имеет 0 значений NA.
Примечание . Функцию sapply() можно использовать для применения функции к каждому столбцу во фрейме данных. В этом примере мы применяем функцию, которая подсчитывает общее количество элементов, равное NA.
Пример 2. Подсчитайте значения NA в каждом столбце с помощью dplyr
Следующий код показывает, как подсчитать количество значений NA в каждом столбце с помощью функции summarise() из пакета dplyr :
#count NA values in each column sapply(df, function (x) sum(is. na (x))) team points assists rebounds 0 1 2 0
По результату мы видим:
- Столбец команды имеет 0 значений NA.
- Столбец баллов имеет 1 значение NA.
- Столбец передач имеет 2 значения NA.
- Столбец отказов имеет 0 значений NA.
Эти результаты соответствуют результатам предыдущего примера.
Примечание . Метод dplyr обычно работает быстрее, чем базовый метод R, при работе с чрезвычайно большими кадрами данных.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:
Как использовать na.omit в R
Как использовать Complete.cases в R
Как удалить пустые строки из фрейма данных в R