如何统计列中唯一项出现次数并按次数从多到少排序?
如何按出现频次排序唯一项及对应次数
我能用=UNIQUE(A1:A100)(放在B1单元格)和=COUNTIF($A$1:$A$100, B1)(放在C1单元格)提取A列的唯一项并统计出现次数,但怎么把B、C列按出现次数从多到少排序,让数据按频次高低展示?
解决方法
方法1:动态数组一步搞定(适用于Excel 365/2021)
直接在B1单元格输入下面的公式,自动生成排序好的结果:
=SORT(HSTACK(UNIQUE(A1:A100), COUNTIF(A1:A100, UNIQUE(A1:A100))), 2, -1)
UNIQUE(A1:A100):提取A列所有不重复的内容COUNTIF(...):统计每个唯一项在A列的出现次数HSTACK:把唯一项和次数合并成两列SORT(...,2,-1):指定按第2列(次数列)降序排序
方法2:手动排序适配旧版Excel
如果你的Excel不支持动态数组,按以下步骤来:
- 在B1输入
=UNIQUE(A1:A100),下拉填充到出现空值,提取所有唯一项 - 在C1输入
=COUNTIF($A$1:$A$100, B1),下拉填充对应B列的次数 - 选中B、C列的数据区域(如果有表头也一起选),点击「数据」选项卡的「排序」
- 排序设置:主要关键字选C列(次数列),次序选择「降序」,确认后数据就会按频次从高到低排列
示例效果
| A | B | C |
|---|---|---|
| foo | bar | 3 |
| bar | foo | 2 |
| foo | baz | 1 |
| baz | ||
| bar | ||
| bar |
内容的提问来源于stack exchange,提问作者Rob Fletcher
相关产品推荐
相关产品推荐

