如何在Pandas中同时按日期和unitName列分组统计行数?
按日期与单位名称分组统计行数的修改方案
你只需要将groupby的by参数改为包含两个分组键的列表,同时指定日期列(提取日期部分)和unitName列即可:
df = df.groupby(by=[df['startDate'].dt.date, 'unitName']).count()
补充说明:
- 上述代码会对每个(日期,单位名称)的组合分组,统计各列的非空值数量。如果你的需求是单纯统计每组的总行数,使用
size()会更高效(它直接计算分组大小,不排除空值),同时可以用reset_index()将分组索引转为普通列:
其中df = df.groupby(by=[df['startDate'].dt.date, 'unitName']).size().reset_index(name='row_count')name='row_count'是给统计结果列自定义命名,方便后续识别。
内容的提问来源于stack exchange,提问作者Thelonious Monk
相关产品推荐
相关产品推荐

