如何使用dplyr统计满足指定属性的响应数量并直接输出数值
R 直接输出筛选条件匹配行数的实现方法
你可以通过以下几种方式直接得到符合条件的观测计数,无需生成中间数据表:
方法1:dplyr 链式调用 nrow()
直接在筛选语句后追加nrow(),运行后控制台会直接输出匹配的行数:
Other_Data %>% dplyr::filter(Description == "Information" & Category == 1 & Cost >= 1000) %>% nrow()
方法2:使用dplyr::count()一步统计
你也可以直接把筛选条件传入count(),同时得到符合/不符合条件的两类计数:
Other_Data %>% dplyr::count(matched = Description == "Information" & Category == 1 & Cost >= 1000)
方法3:基础R语法实现
无需加载dplyr包的前提下,用逻辑值求和即可得到匹配数:
sum(Other_Data$Description == "Information" & Other_Data$Category == 1 & Other_Data$Cost >= 1000, na.rm = TRUE)
参数na.rm = TRUE可以避免字段空值导致返回NA的问题
内容的提问来源于stack exchange,提问作者Brennan
相关产品推荐
相关产品推荐

