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

如何在R中批量删除出现次数不足200次的牛群数据?

按牛群出现次数筛选数据集的几种方法

针对你的需求,这里提供几种高效实现方式,无需手动逐个输入牛群编号:

1. Base R 原生方法(无需额外安装包)

适合不想依赖第三方包的场景,步骤清晰:

# 计算每个牛群的出现次数
herd_counts <- table(your_data$herd)
# 筛选出出现次数≥200的牛群(示例中可替换为≥3)
valid_herds <- names(herd_counts)[herd_counts >= 200]
# 过滤原数据集,只保留合格牛群的数据
filtered_data <- your_data[your_data$herd %in% valid_herds, ]

2. 用你熟悉的plyr包实现

结合你已在使用的count()函数,直接衔接筛选逻辑:

library(plyr)
# 统计各牛群的出现次数
herd_freq <- count(your_data, "herd")
# 提取符合次数要求的牛群编号
valid_herds <- herd_freq$herd[herd_freq$freq >= 200]
# 过滤原数据
filtered_data <- subset(your_data, herd %in% valid_herds)

3. dplyr包实现(推荐处理大数据)

针对你40万条记录的数据集,dplyr效率更高,代码也更简洁,一步完成分组筛选:

library(dplyr)
filtered_data <- your_data %>%
  group_by(herd) %>%
  filter(n() >= 200) %>%  # n()代表当前分组的行数,即牛群的牛数量
  ungroup()

将上述代码中的your_data替换为你的实际数据集名称,200替换为示例中的3,即可复现你给出的示例结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 22:35:28