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

如何统计data frame中因子出现次数并删除出现次数≤指定值的行

解决方法:筛选出现次数≥3的type行

嘿,这个需求很容易实现,我给你两种常用的方法,你可以按需选择:

方法一:Base R 原生实现

不需要额外安装包,用原生函数就能搞定:

# 第一步:统计每个type的出现频次
type_freq <- table(df$type)
# 第二步:提取出出现次数≥3的type类别
keep_types <- names(type_freq)[type_freq >= 3]
# 第三步:过滤原数据框,只保留目标type的行
filtered_df <- df[df$type %in% keep_types, ]

运行这段代码后,filtered_df就是你想要的结果啦。

方法二:使用 dplyr(tidyverse 生态)

如果你平时习惯用 tidyverse 风格的代码,这个方法更简洁直观:

library(dplyr)

filtered_df <- df %>%
  # 按type分组
  group_by(type) %>%
  # 只保留组内行数≥3的组
  filter(n() >= 3) %>%
  # 取消分组(可选,但推荐保持数据结构整洁)
  ungroup()

这里的n()会返回每组的行数,直接用它来筛选就非常方便。

你可以运行任意一种方法,得到的结果都会和你给出的目标data frame一致哦。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 09:49:15