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

海量数据提取Top10高频内容,替代CountIf手动操作的高效方法?

快速找出海量数据中频次最高的前10项(无需逐个输入CountIf)

方法一:Excel 365/2021 动态数组解法(最快捷)

直接用函数组合一步到位,全程手动操作极少:

  1. 提取唯一值+批量计算频次:在空白单元格输入以下公式,会自动生成所有不重复条目及其对应出现次数:
    =HSTACK(UNIQUE(A:A), COUNTIF(A:A, UNIQUE(A:A)))
    
    (把A:A替换成你的实际数据列即可)
  2. 排序+截取前10项:嵌套SORT和TAKE函数,直接输出频次最高的前10条结果:
    =TAKE(SORT(HSTACK(UNIQUE(A:A), COUNTIF(A:A, UNIQUE(A:A))), 2, -1), 10)
    
    公式逻辑:先用UNIQUE提取所有不同条目,COUNTIF自动匹配每个条目的计数,HSTACK合并条目和频次列,SORT按频次列(第2列)降序排列,最后TAKE截取前10行。

方法二:旧版Excel(无动态数组)解决方案

如果你的Excel不支持动态数组,用「高级筛选+批量公式填充」就能解决:

  1. 提取唯一值:
    • 选中数据列(比如A列),点击「数据」选项卡→「高级」筛选
    • 勾选「将筛选结果复制到其他位置」,设置「列表区域」为数据列,「复制到」选空白单元格(比如B1),再勾选「选择不重复的记录」,确定后B列就是所有800+种不同条目
  2. 批量计算频次:
    • 先用=COUNTA(B:B)快速查看唯一值的总数,确保后续公式能覆盖所有条目
    • 在C2输入=COUNTIF(A:A, B2),双击C2单元格右下角的填充柄(小方块),公式会自动填充到所有唯一值对应的行,自动完成800+条计数,不用手动逐个输入
  3. 获取前10项:
    • 选中B:C列,点击「数据」→「排序」,按C列(频次)降序排列,直接取前10行即可
    • 要是你的Excel支持FILTER,也可以用公式筛选(含并列第10的情况):
      =FILTER(B:C, C:C >= LARGE(C:C, 10))
      

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 21:30:31