在数据处理中,分箱、分组是一种常见的技术,用于将连续数据的间隔分组到“箱”或“桶”中。我们将讨论以下两种方法:

  1. 使用 Pandas 的 betweenloc 方法:

    • between 方法返回一个布尔向量,指示 Series 元素是否位于给定的边界值之间。

    • loc 方法用于根据条件选择数据。

    • 示例:将学生的分数分为等级 A、B 和 C。

    • 代码示例:

      import pandas as pd
      import numpy as np # 创建随机成绩score数据
      df = pd.DataFrame({'score': np.random.randint(0, 101, 1000)}) print(df)
      ##########
      score
      0 56
      1 94
      2 89
      3 58
      4 29
      5 37
      6 63
      7 64
      8 82
      9 76
      ########## # 0~50分 成绩等级grade为C
      df.loc[df['score'].between(0, 50, inclusive='both'), 'grade'] = 'C'
      # 50~80分 成绩等级grade为B
      df.loc[df['score'].between(50, 80, inclusive='right'), 'grade'] = 'B'
      # 80~100分 成绩等级grade为A
      df.loc[df['score'].between(80, 100, inclusive='right'), 'grade'] = 'A' print(df)
      ##########
      score grade
      0 56 B
      1 94 A
      2 89 A
      3 58 B
      4 29 C
      5 37 C
      6 63 B
      7 64 B
      8 82 A
      9 76 B
      ##########
    • 查看每个等级的人数:df['grade'].value_counts()

      print(df['grade'].value_counts())
      ##########
      grade
      B 5
      A 3
      C 2
      ##########
  2. 使用 Pandas 的 cut 方法:

    • cut 方法将值分类为离散的间隔。

    • 示例:将分数分为等级 C、B 和 A。

    • 代码示例:

      bins = [0, 50, 80, 100]
      labels = ['C', 'B', 'A']
      # 分仓
      df['grade'] = pd.cut(x=df['score'], bins=bins, labels=labels, include_lowest=True) print(df)
      ##########
      score grade
      0 56 B
      1 94 A
      2 89 A
      3 58 B
      4 29 C
      5 37 C
      6 63 B
      7 64 B
      8 82 A
      9 76 B
      ##########
    • 查看每个等级的人数:df['grade'].value_counts()

      print(df['grade'].value_counts())
      ##########
      grade
      B 5
      A 3
      C 2
      ##########

Python Pandas 数据分组的更多相关文章

  1. (数据科学学习手札06)Python在数据框操作上的总结(初级篇)

    数据框(Dataframe)作为一种十分标准的数据结构,是数据分析中最常用的数据结构,在Python和R中各有对数据框的不同定义和操作. Python 本文涉及Python数据框,为了更好的视觉效果, ...

  2. python中pandas数据分析基础3(数据索引、数据分组与分组运算、数据离散化、数据合并)

    //2019.07.19/20 python中pandas数据分析基础(数据重塑与轴向转化.数据分组与分组运算.离散化处理.多数据文件合并操作) 3.1 数据重塑与轴向转换1.层次化索引使得一个轴上拥 ...

  3. 小白学 Python 数据分析(11):Pandas (十)数据分组

    人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):P ...

  4. Python的工具包[1] -> pandas数据预处理 -> pandas 库及使用总结

    pandas数据预处理 / pandas data pre-processing 目录 关于 pandas pandas 库 pandas 基本操作 pandas 计算 pandas 的 Series ...

  5. Python之数据聚合与分组运算

    Python之数据聚合与分组运算 1. 关系型数据库方便对数据进行连接.过滤.转换和聚合. 2. Hadley Wickham创建了用于表示分组运算术语"split-apply-combin ...

  6. pandas学习(数据分组与分组运算、离散化处理、数据合并)

    pandas学习(数据分组与分组运算.离散化处理.数据合并) 目录 数据分组与分组运算 离散化处理 数据合并 数据分组与分组运算 GroupBy技术:实现数据的分组,和分组运算,作用类似于数据透视表 ...

  7. Python pandas检查数据中是否有NaN的几种方法

    Python pandas: check if any value is NaN in DataFrame # 查看每一列是否有NaN: df.isnull().any(axis=0) # 查看每一行 ...

  8. Python之pandas数据加载、存储

    Python之pandas数据加载.存储 0. 输入与输出大致可分为三类: 0.1 读取文本文件和其他更好效的磁盘存储格式 2.2 使用数据库中的数据 0.3 利用Web API操作网络资源 1. 读 ...

  9. 基于tornado python pandas和bootstrap上传组件的mongodb数据添加工具

    总体思路:基于bootstrap4的前端页面上传组件,把excel文件上传至服务器,并利用python pandas读取里面的数据形成字典列表 通过pymongo 接口把数据插入或追加到mongodb ...

  10. python pandas数据分析基础入门2——(数据格式转换、排序、统计、数据透视表)

    //2019.07.18pyhton中pandas数据分析学习——第二部分2.1 数据格式转换1.查看与转换表格某一列的数据格式:(1)查看数据类型:某一列的数据格式:df["列属性名称&q ...

随机推荐

  1. mybatis复习(二)

    简介 mybatis是一个优秀的基于 java 的持久层框架,它内部封装了 jdbc,使开发者只需要关注 sql语句本身, 而不需要花费精力去处理加载驱动.创建连接.创建 statement 等繁杂的 ...

  2. 【Kotlin】List、Set、Map简介

    1 List ​ Java 的 List.Set.Map 介绍见 → Java容器及其常用方法汇总. 1.1 创建 List 1.1.1 emptyList var list = emptyList& ...

  3. 基于OT与CRDT协同算法的文档划词评论能力实现

    基于OT与CRDT协同算法的文档划词评论能力实现 当我们实现在线文档平台时,划词评论的功能是非常必要的,特别是在重文档管理流程的在线文档产品中,文档反馈是非常重要的一环,这样可以帮助文档维护者提高文档 ...

  4. Mogdb - 安装报错Failed to encrypt the password for databaseError

    Mogdb - 安装报错 Failed to encrypt the password for databaseError 本文出处:https://www.modb.pro/db/418363 版本 ...

  5. Telnet qsnctfwp

    Windows 安装 Telnet 在控制面板的程序和功能中选择打开或关闭Windows功能 启用 Telnet 客户端并单击确认退出 启动终端,输入命令 telnet 打开 Telnet 客户端 在 ...

  6. http协议重新整理——————历史[一]

    前言 简单整理一些http协议. 正文 20 世纪 60 年代,美国国防部高等研究计划署(ARPA)建立了 ARPA 网,它有四个分布在各地的节点,被认为是如今互联网的"始祖". ...

  7. input 去除默认样式

    前言 如何不自己写框架,基本用不上. 正文 input{ border: 0px; background-color: none; outline: none; } input:focus{ outl ...

  8. VulnHub-Jangow-01-1.0.1打靶记录

    知识点 NMAP参数 -sV 获取系统信息 -sT TCP扫描可能会留下日志记录 -sC 使用默认脚本(在-A模式下不需要) -p1-xxx 扫描端口号 -p- ==>等价于 -p1-65535 ...

  9. 阿里云荣获可信云容器安全能力先进级认证, ACK/ACR为企业级安全护航

    阿里云关注企业级用户的Kubernetes生产落地痛点,结合企业生产环境的大量实践,全面帮助企业真正落地云原生架构.安全侧问题,是众多大中型或金融领域企业的核心关注点. 端到端云原生安全架构 早在20 ...

  10. 国内唯一连续入选Gartner,Quick BI是如何做到的?

    ​简介:阿里云Quick BI凭借灵活的公共云部署,私有化独立部署能力.无缝对接各类云上数据库和自建数据库.可视化搭建分析.高效数据处理能力与强大数据计算能力,使得在2022年持续入选Gartner ...