Часто вас может интересовать только подсчет количества строк во фрейме данных R, которые соответствуют некоторым критериям. К счастью, это легко сделать, используя следующий базовый синтаксис:
sum(df$column == value, na.rm= TRUE )
В следующих примерах показано, как использовать этот синтаксис на практике для следующего фрейма данных:
#create data frame
data <- data.frame(team=c('Mavs', 'Mavs', 'Spurs', 'Spurs', 'Lakers'),
points=c(14, NA, 8, 17, 22),
rebounds=c(8, 5, 5, 9, 12))
#view data frame
data
team points rebounds
1 Mavs 14 8
2 Mavs NA 5
3 Spurs 8 5
4 Spurs 17 9
5 Lakers 22 12
Пример 1. Подсчет строк, равных некоторому значению
В следующем коде показано, как подсчитать количество строк, в которых имя команды равно «Mavs»:
sum(data$team == 'Mavs')
[1] 2
В следующем коде показано, как подсчитать количество строк, в которых название команды равно «Mavs» или «Lakers»:
sum(data$team == 'Mavs ' | data$team == 'Lakers')
[1] 3
В следующем коде показано, как подсчитать количество строк, в которых название команды не равно «Лейкерс»:
sum(data$team != 'Lakers')
[1] 4
Пример 2. Подсчет строк больше или равен некоторому значению
В следующем коде показано, как подсчитать количество строк, в которых количество точек больше 10:
sum(data$points > 10, na.rm= TRUE )
[1] 3
В следующем коде показано, как подсчитать количество строк, в которых количество подборов меньше или равно 9:
sum(data$rebounds <= 9, na.rm= TRUE )
[1] 4
Пример 3. Подсчет строк между двумя значениями
В следующем коде показано, как подсчитать количество строк, в которых количество точек находится в диапазоне от 10 до 20:
sum(data$points > 10 & data$points < 20, na.rm= TRUE )
[1] 2
В следующем коде показано, как подсчитать количество рядов, где количество подборов находится между 8 и 10:
sum(data$rebounds > 8 & data$rebounds < 10, na.rm= TRUE )
[1] 1
Дополнительные ресурсы
Как подсчитать наблюдения по группе в R
Как сгруппировать и суммировать данные в R