目录 / pandas-aggregations-groupbys-syntax
pandas-aggregations-groupbys-syntax
Pandas 聚合与分组(groupby)语法指南与说明 1. 基本分组语法 使用 `groupby()` 方法按一个或多个列对数据进行分组: ```python df.groupby('column_name') ``` 可传入多个列名进行多级分组: ```python df.groupby(['col1', 'col2']) ``` 2. 常用聚合操作 分组后可使用多种聚合函数: - 单一聚合: ```python df.groupby('col')['value_col'].sum() df.groupby('col')['value_col'].mean() df.groupby('col')['value_col'].count() ``` 支持的聚合函数包括:`sum()`、`mean()`、`median()`、`min()`、`max()`、`std()`、`var()`、`count()`、`nunique()` 等。 - 多列聚合: ```python df.groupby('col')[['val1', 'val2']].sum() ``` 3. 多聚合函数(agg) 使用 `agg()` 方法对同一列或多个列应用多个聚合函数: ```python df.groupby('col')['value_col'].agg(['sum', 'mean', 'count']) ``` 对多列分别指定聚合方式: ```python df.groupby('col').agg({ 'val1': 'sum', 'val2': ['mean', 'std'], 'val3': 'count' }) ``` 4. 自定义聚合函数 可传入自定义函数: ```python def range_func(x): return x.max() - x.min() df.groupby('col')['value_col'].agg(range_func) ``` 或使用 lambda 表达式: ```python df.groupby('col')['value_col'].agg(lambda x: x.quantile(0.9)) ``` 5. 分组后重置索引 聚合结果默认以分组列为索引,使用 `reset_index()` 转为普通列: ```python df.groupby('col')['value_col'].sum().reset_index() ``` 6. 分组排序 使用 `sort_values()` 对聚合结果排序: ```python df.groupby('col')['value_col'].sum().sort_values(ascending=False) ``` 7. 过滤分组(filter) 使用 `filter()` 根据组内条件筛选整个组: ```python df.groupby('col').filter(lambda x: x['value_col'].mean() > 10) ``` 8. 转换操作(transform) 使用 `transform()` 返回与原始数据相同形状的聚合结果,常用于组内标准化: ```python df['group_mean'] = df.groupby('col')['value_col'].transform('mean') ``` 9. 应用函数(apply) 使用 `apply()` 对每个分组应用任意函数,灵活性最高: ```python df.groupby('col').apply(lambda x: x['value_col'].sum() / x['value_col'].count()) ``` 10. 注意事项 - 分组列中的缺失值(NaN)会被自动排除。 - 聚合操作默认忽略 NaN 值。 - 使用 `as_index=False` 可在分组时避免将分组列设为索引: ```python df.groupby('col', as_index=False)['value_col'].sum() ``` 通过合理使用 `groupby` 与聚合函数,可高效实现数据的分组统计与分析。
这是模型对公开材料的总结,不是官方声明,请以原链内容为准。
存档时间线
| 版本 | 存档时间 | 内容哈希 | 内容 |
|---|---|---|---|
| v1 | 2026-11-15 10:11 | 5d640783 | 可取 |
版本索引永久保留;内容副本只保留最新 1 份,更早版本仅留索引与哈希(存档时间线的证据链不会因此断裂)。
提交举报 / 纠错
侵权举报经核验成立后,我们会即时下线该条目并删除已存的内容副本。