首页 > 编程语言 >Python Pandas 数据分组

Python Pandas 数据分组

时间:2024-05-18 23:41:40浏览次数:23  
标签:Python 50 grade df score 分组 ########## 80 Pandas

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

  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,50,grade,df,score,分组,##########,80,Pandas
From: https://www.cnblogs.com/taozhengquan/p/18195295

相关文章

  • 【Python】强化学习SARSA走迷宫
    之前有实现Q-Learning走迷宫,本篇实现SARSA走迷宫。Q-Learning是一种off-policy算法,当前步采取的决策action不直接作用于环境生成下一次state,而是选择最优的奖励来更新Q表。更新公式:SARSA是一种on-policy算法,当前步采取的策略action既直接作用于环境生成新的state,也用来更新Q表......
  • Python数据分析numpy、pandas、matplotlib包
    Python数据分析numpy、pandas、matplotlib一、基础1.1notebook的一些配置快捷键:ctrl+enter执行单元格程序并且不跳转到下一行esc+L可以显示行号结果是打印的而没有返回任何的值就没有out1.2列表基础知识回顾b=[1,2.3,'a','b']b#列表中的元素允许各个元素不一样......
  • 轻松玩转Python文件操作:移动、删除
    哈喽,大家好,我是木头左!Python文件操作基础在处理计算机文件时,经常需要执行如移动和删除等基本操作。Python提供了一些内置的库来帮助完成这些任务,其中最常用的就是os模块和shutil模块。这两个模块包含了许多与文件和目录操作相关的函数。理解os模块os模块是Python中用于与操......
  • 解决Python执行命令时路径空格引发的困扰
    哈喽,大家好,我是木头左!在编程实践中,常常需要通过Python执行系统命令,这包括调用外部程序、脚本或是其他命令行工具。然而,一个看似简单却常被忽视的细节——文件路径中的空格,可能会导致程序意外崩溃或行为异常。本篇文章将深入探讨当路径中包含空格时,如何在Python中正确执行命令,以......
  • python中pip安装源配置
    需要指定pip为国内源windows打开文件资源管理器地址栏上面输入%appdata%在这里面新建一个文件夹pip在pip文件夹里面新建一个文件叫做pip.ini,内容写如下即可python[global]timeout=6000index-url=https://mirrors.aliyun.com/pypi/simple/trusted-hos......
  • 用flask框架在html中运行python程序
    目录-app.py-templates-index.html首先安装Flask和OpenCV库pipinstallflaskopencv-python接着创建一个Python脚本,叫做app.pyfromflaskimportFlask,render_template,Responseimportcv2app=Flask(__name__)@app.route('/')defindex():retur......
  • Python 潮流周刊#51:用 Python 绘制美观的图表
    本周刊由Python猫出品,精心筛选国内外的250+信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进Python技术,并增长职业和副业的收入。本期周刊分享了12篇文章,12个开源项目,赠书5本《图解IT基础设施》,全文220......
  • Python学习迭代器(Iterator)
    一、可迭代的对象(Iterable)1、定义:可以直接用在循环的数据类型,如list,tuple,dict,set,str,还有generator(生成器),和带yield的函数,这些直接可以用在循环的对象统称为可迭代对象(Iterable)fromcollectionsimportIterableprint(isinstance([],Iterable))print(isin......
  • python中的生成器(generator)学习
    生成器(Generator)是一种特殊的函数,可以用于迭代地生成一系列值,而不需要一次性生成所有值并将它们存储在内存中。生成器在需要时逐个生成值,并在生成值后暂停执行,保留函数的状态,以便下次调用时能够从停止的地方继续执行。生成器函数使用yield语句来定义,而不是常规函数中的return......
  • python计算机视觉学习笔记——PIL库的用法
    如果需要处理的原图及代码,请移步小编的GitHub地址传送门:请点击我如果点击有误:https://github.com/LeBron-Jian/ComputerVisionPractice这个是之前的笔记,自己看到了就顺带发出来,也是温习一下,内容可能不太全,算是入门贴吧。前言:PIL 图像处理是计算机视觉领域中......