如何在Tableau中按组计算频次?(年龄频次条形图制作问题)
解决年龄频次统计与条形图制作问题
Excel 操作步骤
- 先统计频次:选中年龄列,点击「数据」选项卡的「删除重复值」得到所有唯一年龄;在旁边单元格用
COUNTIF函数统计,比如输入=COUNTIF(A:A, C2)(假设A列是年龄,C列是去重后的年龄),下拉填充就能得到每个年龄的用户数。 - 做条形图:选中去重年龄和对应的频次两列数据,插入「条形图」(或柱形图),调整标签和标题就搞定。
Python 实现方案(pandas+matplotlib)
别用count(),那是统计列的非空总数,要用value_counts()才是统计每个值的频次:
import pandas as pd import matplotlib.pyplot as plt # 读入数据,假设你的表存在data.csv,列名是Id和Age df = pd.read_csv("data.csv") # 统计每个年龄的频次,并按年龄排序 age_freq = df["Age"].value_counts().sort_index() # 画条形图 age_freq.plot(kind="bar") plt.xlabel("年龄") plt.ylabel("用户数量") plt.title("各年龄用户分布") plt.show()
SQL 统计+可视化
如果数据存在数据库里,先查询各年龄频次:
SELECT Age, COUNT(Id) AS user_count FROM your_table GROUP BY Age ORDER BY Age;
把查询结果导出后,用Excel或可视化工具直接生成条形图即可。
内容的提问来源于stack exchange,提问作者Ondina Castillo
相关产品推荐
相关产品推荐

