如何在Excel数据透视表中生成双变量计数表并制作条形图
嗨,我来帮你搞定这个联合计数表和条形图的问题~
先把你的样本数据整理成清晰的表格形式方便参考:
| Firm | Item1 | Item2 |
|---|---|---|
| 1 | 1 | 1 |
| 2 | 2 | 1 |
| 3 | 1 | 2 |
| 4 | 1 | 2 |
两种联合计数表的解决方案
根据你的需求,分两种常见场景给出方案:
场景1:统计(Item1, Item2)组合的出现次数
如果你需要知道每个(Item1, Item2)值组合的出现频次(比如(1,1)出现1次、(2,1)出现1次、(1,2)出现2次),用数据透视表就能轻松实现:
- 选中所有数据区域(包含表头)
- 点击「插入」→「数据透视表」,选择放置位置(比如新工作表)
- 在数据透视表字段面板中:
- 把
Item1拖到行区域 - 把
Item2拖到列区域 - 把任意字段(比如
Firm)拖到值区域,然后右键点击值区域的单元格,选择「值字段设置」→「计数」
- 把
- 这样就能得到一个交叉计数表,每个单元格对应一组值组合的出现次数
场景2:对比Item1和Item2各自值的计数
如果你需要把Item1和Item2的各值计数放在同一张表中(比如Item1的1出现3次、2出现1次;Item2的1出现2次、2出现2次),推荐先调整数据结构,再用透视表:
步骤1:把数据转换成「长格式」
Excel的透视表对长格式数据更友好,你可以把原数据改成这样的结构:
| Firm | Category | Value |
|---|---|---|
| 1 | Item1 | 1 |
| 1 | Item2 | 1 |
| 2 | Item1 | 2 |
| 2 | Item2 | 1 |
| 3 | Item1 | 1 |
| 3 | Item2 | 2 |
| 4 | Item1 | 1 |
| 4 | Item2 | 2 |
操作方法:
- 在原数据右侧新增两列,表头设为
Category和Value - 第一行(Firm1)的
Category填Item1,Value引用原数据的Item1单元格;下一行Category填Item2,Value引用原数据的Item2单元格 - 选中这两行,下拉填充所有Firm的数据,快速生成长格式数据
步骤2:生成联合计数表
用新的长格式数据做透视表:
- 选中长格式数据区域(含表头),插入数据透视表
- 把
Value拖到行区域,Category拖到列区域,Firm拖到值区域并设置为「计数」 - 得到的表就是Item1和Item2各值的计数对比表,直接选中就能插入条形图
备选方法:用公式手动生成
如果你不想调整数据结构,可以用COUNTIF公式直接计算:
- 先列出Item1和Item2的所有唯一值(比如1、2)
- 计算Item1各值的计数:
=COUNTIF($B$2:$B$5, D2)(假设Item1在B列,唯一值在D列) - 计算Item2各值的计数:
=COUNTIF($C$2:$C$5, D2)(假设Item2在C列) - 手动整理成联合计数表后,即可制作条形图
制作条形图
不管用哪种方法得到计数表,选中表区域(包含表头),点击「插入」→「条形图」,选择你需要的样式(比如簇状条形图),就能完成制作啦~
内容的提问来源于stack exchange,提问作者Max M
相关产品推荐
相关产品推荐

