【愚公系列】《Python网络爬虫从入门到精通》033-DataFrame的数据排序

news/2025/3/1 23:18:12/
标题详情
作者简介愚公搬代码
头衔华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,亚马逊技领云博主,51CTO博客专家等。
近期荣誉2022年度博客之星TOP2,2023年度博客之星TOP2,2022年华为云十佳博主,2023年华为云十佳博主,2024年华为云十佳博主等。
博客内容.NET、Java、Python、Go、Node、前端、IOS、Android、鸿蒙、Linux、物联网、网络安全、大数据、人工智能、U3D游戏、小程序等相关领域知识。
欢迎👍点赞、✍评论、⭐收藏

文章目录

  • 🚀前言
  • 🚀一、DataFrame的数据排序
    • 🔎1.数据排序整理
      • 🦋1.1 `sort_values` 方法概述
      • 🦋1.2 参数详解
      • 🦋1.3 排序场景与实例
        • ☀️1.3.1 单列排序
        • ☀️1.3.2 多列排序
        • ☀️1.3.3 统计结果排序
        • ☀️1.3.4 按行排序
      • 🦋1.4 注意事项
    • 🔎2.数据排名整理
      • 🦋2.1 `rank` 方法概述
      • 🦋2.2 参数详解
      • 🦋2.3 排名规则与实例
        • ☀️2.3.1 顺序排名 (`method='first'`)
        • ☀️2.3.2 平均排名 (`method='average'`)
        • ☀️2.3.3 最小值排名 (`method='min'`)
        • ☀️2.3.4 最大值排名 (`method='max'`)
        • ☀️2.3.5 密集排名 (`method='dense'`)


🚀前言

在数据分析的过程中,数据的排序是一个不可或缺的环节。无论是在探索性数据分析中了解数据分布,还是在准备数据可视化时展示清晰的趋势,掌握如何对DataFrame中的数据进行有效排序都是至关重要的。Pandas库为我们提供了强大的排序功能,使得这一过程简单而高效。

本文将深入探讨DataFrame的数据排序,包括按单列或多列排序的技巧、升序和降序的设置、以及如何处理缺失值对排序结果的影响。我们将通过具体示例,帮助你快速掌握这些操作,提升数据处理的灵活性和效率。

🚀一、DataFrame的数据排序

🔎1.数据排序整理

🦋1.1 sort_values 方法概述

DataFrame.sort_values() 是 Pandas 中用于数据排序的核心方法,功能类似 SQL 的 ORDER BY。支持按行/列排序,语法如下:

python">DataFrame.sort_values(by, axis=0, ascending=True, inplace=False, kind='quicksort', na_position='last', ignore_index=False)

🦋1.2 参数详解

参数说明
by排序依据的列名或列名列表
axis排序轴:0 按行排序(默认),1 按列排序
ascending排序顺序:True 升序(默认),False 降序;多列可用布尔列表指定
inplace是否原地修改:False 返回新对象(默认),True 直接修改原对象
kind排序算法:quicksort(默认)、mergesortheapsort
na_position缺失值位置:last 末尾(默认),first 开头
ignore_index是否重置索引:False 保留原索引(默认),True 生成新索引(0~n-1)

🦋1.3 排序场景与实例

☀️1.3.1 单列排序

场景:按指定列(如“销量”)降序排序
代码:

python">import pandas as pd
excelFile = 'mrbook.xlsx'
df = pd.DataFrame(pd.read_excel(excelFile))
#设置数据显示的列数和宽度
pd.set_option('display.max_columns',500)
pd.set_option('display.width',1000)
#解决数据输出时列名不对齐的问题
pd.set_option('display.unicode.ambiguous_as_wide', True)
pd.set_option('display.unicode.east_asian_width', True)
print('-------------------------按照一列数据排序-------------------------')
#按“销量”列降序排序
df=df.sort_values(by='销量',ascending=False)
print(df)

在这里插入图片描述

☀️1.3.2 多列排序

场景:按多列优先级排序(如先“图书名称”降序,再“销量”降序)
代码:

python">import pandas as pd
excelFile = 'mrbook.xlsx'
df = pd.DataFrame(pd.read_excel(excelFile))
#设置数据显示的列数和宽度
pd.set_option('display.max_columns',</

http://www.ppmy.cn/news/1575892.html

相关文章

Linux操作系统:基于ELK栈的日志分析系统与数据爬虫的设计与实现

基于ELK栈的日志分析系统与数据爬虫的设计与实现 摘要 随着信息技术的飞速发展&#xff0c;服务器运维和数据采集在现代企业中扮演着越来越重要的角色。日志分析系统能够帮助运维人员快速定位问题&#xff0c;提高系统稳定性&#xff1b;数据爬虫则可以用于采集互联网上的公开…

Haption:机器人遥操作触觉力反馈技术革新解决方案

在机器人遥操作过程中&#xff0c;实时、准确地感知机器人所抓握物体的大小与力度&#xff0c;是机器人能否胜任复杂精密任务的关键所在。触觉力反馈技术的融入&#xff0c;正为遥操作技术带来前所未有的变革&#xff0c;推动其迈向新的发展阶段。作为力反馈技术的佼佼者&#…

计算机视觉算法

计算机视觉算法简介 计算机视觉(Computer Vision)作为人工智能的一个重要分支,致力于让计算机能够“看”并理解图像或视频中的内容。其应用领域广泛,从自动驾驶汽车、医疗影像分析到增强现实和安全监控等。随着深度学习技术的发展,计算机视觉已经取得了显著的进展,尤其是…

SEO炼金术(4)| Next.js SEO 全攻略

在上一篇文章 SEO炼金术&#xff08;3&#xff09;| 深入解析 SEO 关键要素 中&#xff0c;我们深入解析了 SEO 关键要素&#xff0c;包括 meta 标签、robots.txt、canonical、sitemap.xml 和 hreflang&#xff0c;并探讨了它们在搜索引擎优化&#xff08;SEO&#xff09;中的作…

基于 MyBatis-Plus 的多租户数据隔离方案

​什么是多租户? 多租户技术(Multi-Tenancy)是一种软件架构设计,允许多个用户(通常为企业或组织)共享同一套系统或应用程序,同时确保各用户之间的数据隔离。这种技术广泛应用于 SaaS(软件即服务)平台,能够有效降低运维成本,提高资源利用率。 核心思想:在一台服务…

在Linux桌面上创建Idea启动快捷方式

1、在桌面新建idea.desktop vim idea.desktop [Desktop Entry] EncodingUTF-8 NameIntelliJ IDEA CommentIntelliJ IDEA Exec/home/software/idea-2021/bin/idea.sh Icon/home/software/idea-2021/bin/idea.svg Terminalfalse TypeApplication CategoriesApplication;Developm…

jenkins使用插件在Build History打印基本信息

1、插件安装 分别是description setter plugin插件和user build vars插件&#xff0c;下面介绍一下这两个插件: description setter plugin&#xff1a;作用是在 Build 栏下方增加一个功能块&#xff0c;用于填写自定义信息&#xff0c;也就是 Build history 中需要显示的文字…

Zookeeper(67) Zookeeper在HBase中的应用是什么?

Zookeeper 在 HBase 中起到了至关重要的作用&#xff0c;主要用于协调和管理 HBase 集群中的多个组件。具体来说&#xff0c;Zookeeper 在 HBase 中的应用包括以下几个方面&#xff1a; Master 选举&#xff1a;HBase 集群中可以有多个 Master 节点&#xff0c;但只有一个处于…