You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R中统计同时满足不同列指定条件的响应数量

R多条件计数实现方案

现有代码问题

你写的代码存在两个核心问题:

  • dplyr管道传递的是数据框对象,不能直接接sum()对整表计算,sum()仅接收向量作为统计对象
  • 你需求中要求第2列≥100,现有代码里写的判断阈值是1000,不符合需求可按需修改

正确实现代码

写法1:先筛选再统计行数

逻辑更直观,先取出所有符合条件的行,再统计行数量

library(dplyr)
sample_count <- sample_220 %>%
  # 多条件过滤,多个条件用逗号分隔等价于&
  filter(sample.column1 == TRUE, sample.column2 >= 100, sample.column3 == "Sample Institution") %>%
  nrow()

写法2:直接对逻辑向量求和

适合不需要保留筛选后数据的场景,效率更高

library(dplyr)
sample_count <- sample_220 %>%
  summarise(
    # 加na.rm = TRUE可以自动忽略数据中的空值,避免结果返回NA
    valid_count = sum(sample.column1 == TRUE & sample.column2 >= 100 & sample.column3 == "Sample Institution", na.rm = TRUE)
  ) %>%
  # 提取统计结果为数值向量
  pull(valid_count)

内容的提问来源于stack exchange,提问作者Brennan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 11:15:03