当前位置: 首页 > article >正文

pandas中df.groupby详解?

 `df.groupby` 是 pandas 库用于实现按照某些列进行拆分,应用函数和组合的一个功能。步骤如下:
1. 按照指定的一列或多列进行分组 (grouping)
2. 对每个分组应用一个聚合函数 (aggregation)
3. 将每个分组的聚合结果合并成一个数据结构
语法:
df.groupby(by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False, observed=False, **kwargs)
参数:
- `by`: 用于分组的列名或者数组
- `axis`: 默认为 `0`,表示对行进行操作;`1` 表示对列进行操作
- `level`: 整数或者字符串类型的值,表示按照某个特定层次分组
- `as_index`: 默认值为 `True`,表示分组列将在结果中作为索引;若设为 `False`,则分组列将不作为索引。
- `sort`: 默认值为 `True`,表示按分组键进行排序;若设为 `False`,则不进行排序
- `group_keys`: 默认值为 `True`,表示分组键作为新的索引,同时可以控制是否显示在结果中
- `squeeze`: 默认值为 `False`,表示当返回的组是一个单一的组,是否强制其成为一个序列
- `observed`: bool, 默认值为 `False`,表示在拆分时只包含观察到的值
示例:
import pandas as pd
import numpy as np
data = {'Animal':['Dog','Cat','Dog','Cat','Dog','Cat','Dog','Dog','Cat','Cat'],
        'Name':['Happy','Lucy','Lucky','Leo','Milo','Kitty','Lily','Max','MeiMei','Mimi'],
        'Weight':[32,12,45,23,17,8,15,37,24,21]}
df = pd.DataFrame(data)
# 根据 Animal 列进行分组,计算 Weight 列平均值
grouped = df.groupby(['Animal'])
result = grouped['Weight'].mean()
print(result)
输出:
Animal
Cat    16.200000
Dog    26.166667
Name: Weight, dtype: float64
本例中,我们根据 `Animal` 列进行分组,然后对 `Weight` 列进行求平均值。可以看到,输出结果中显示了每个不同的 `Animal` 分组的平均体重。


http://www.kler.cn/news/11852.html

相关文章:

  • 车企跨界背后,智能手机进入新增长时代
  • BBR算法
  • C++——模板初阶与泛型编程
  • 【Linux】进程地址空间
  • 两层神经网络的参数求导过程
  • Redis分布式锁的实现方式及底层原理
  • 数字图像处理(第三版)绪论笔记
  • vue监视数据的原理、收集表单数据
  • 「SQL面试题库」 No_36 树节点
  • 【机器视觉------标定篇(二)】三点成圆算法(求相机旋转中心)
  • 【算法LearnNO.1】算法介绍以及算法的时间复杂度和空间复杂度
  • Python遥感开发之FY的批量处理
  • 关于二叉树访问顺序的选择题
  • 中核科技:科技匠心 智启未来
  • huggingface transformer模型介绍
  • 【记录】windows中edge常用快捷键
  • 统信UOS专业版系统安装教程 - 手动分区安装UOS系统
  • MinIO基础教程
  • 矩阵键盘+CH559制作国产USB矩阵键盘
  • 2023年4月 每日一题 day2
  • 丝滑的打包部署,一套带走~
  • tpm2-tools源码分析之tpm2_create.c(2)
  • 如何使用Socks5代理IP提高网络安全性
  • 【Python】ChatGPT入门
  • 找漏洞赚外快?给ChatGPT挑毛病,最高奖励14万
  • http状态码
  • Go并发(2)
  • JUC-01 线程的创建和状态转换
  • 浪潮:2022年净利同比增长51.39%
  • Windows服务器使用代码SSH免密登录并执行脚本