iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python pandas 数据排序的几种常用方法
  • 176
分享到

python pandas 数据排序的几种常用方法

2024-04-02 19:04:59 176人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

前言: pandas中排序的几种常用方法,主要包括sort_index和sort_values。 基础数据: import pandas as pd import numpy as

前言:

pandas排序的几种常用方法,主要包括sort_index和sort_values。

基础数据:

import pandas as pd
import numpy as np
data = {
    'brand':['python', 'C', 'c++', 'C#', 'Java'],
    'B':[4,6,8,12,10],
    'A':[10,2,5,20,16],
    'D':[6,18,14,6,12],
    'years':[4,1,1,30,30],
    'C':[8,12,18,8,2]
}
index = [9,3,4,5,2]
df = pd.DataFrame(data=data, index = index)
print("df数据:\n", df, '\n')

out:

df数据:
     A   B   C   D   brand  years
9  10   4   8   6  Python      4
3   2   6  12  18       C      1
4   5   8  18  14     C++      1
5  20  12   8   6      C#     30
2  16  10   2  12    Java     30 

按行索引排序:

print("按行索引排序:\n", df.sort_index(), '\n')

out:

按行索引排序:
     A   B   C   D   brand  years
2  16  10   2  12    Java     30
3   2   6  12  18       C      1
4   5   8  18  14     C++      1
5  20  12   8   6      C#     30
9  10   4   8   6  Python      4

通过设置参数ascending可以设置升序或者降序排序,默认情况下ascending=True,为升序排序。

设置ascending=False时,为降序排序。

print("按行索引降序排序:\n", df.sort_index(ascending=False), '\n')

out:

按行索引降序排序:
     A   B   C   D   brand  years
9  10   4   8   6  Python      4
5  20  12   8   6      C#     30
4   5   8  18  14     C++      1
3   2   6  12  18       C      1
2  16  10   2  12    Java     30

按列的名称排序:

设置参数axis=1实现按列的名称排序:

print("按列名称排序:\n", df.sort_index(axis=1), '\n')

out:

按列名称排序:
     A   B   C   D   brand  years
9  10   4   8   6  Python      4
3   2   6  12  18       C      1
4   5   8  18  14     C++      1
5  20  12   8   6      C#     30
2  16  10   2  12    Java     30

同样,也可以设置ascending参数:

print("按列名称排序:\n", df.sort_index(axis=1, ascending=False), '\n')

out:

按列名称排序:
    years   brand   D   C   B   A
9      4  Python   6   8   4  10
3      1       C  18  12   6   2
4      1     C++  14  18   8   5
5     30      C#   6   8  12  20
2     30    Java  12   2  10  16

按数值排序:

sort_values()是pandas中按数值排序的函数:

1、按单个列的值排序

sort_values()中设置单个列的列名,可以对单个列进行排序,通过设置ascending可以设置升序或者降序。

print("按列名称A排序:\n", df.sort_values('A'), '\n')

out:

按列名称排序:
     A   B   C   D   brand  years
3   2   6  12  18       C      1
4   5   8  18  14     C++      1
9  10   4   8   6  Python      4
2  16  10   2  12    Java     30
5  20  12   8   6      C#     30

设置ascending=False进行降序排序:

print("按列名称A降序排序:\n", df.sort_values('A', ascending=False), '\n')

out:

按列名称A降序排序:
     A   B   C   D   brand  years
5  20  12   8   6      C#     30
2  16  10   2  12    Java     30
9  10   4   8   6  Python      4
4   5   8  18  14     C++      1
3   2   6  12  18       C      1

按多个列的值排序:

先按year列的数据进行升序排序,year列相同的再看B列进行升序排序

print("按多个列排序:\n", df.sort_values(['years', 'B']), '\n')

out:

按多个列排序:
     A   B   C   D   brand  years
3   2   6  12  18       C      1
4   5   8  18  14     C++      1
9  10   4   8   6  Python      4
2  16  10   2  12    Java     30
5  20  12   8   6      C#     30 

也可以分别设置列的升序、降序来排序:

years列为升序,B列为降序。

print("按多个列排序:\n", df.sort_values(['years', 'B'], ascending=[True, False]), '\n')

out:

按多个列排序:
     A   B   C   D   brand  years
4   5   8  18  14     C++      1
3   2   6  12  18       C      1
9  10   4   8   6  Python      4
5  20  12   8   6      C#     30
2  16  10   2  12    Java     30

inplace使用:

inplace=True:不创建新的对象,直接对原始对象进行修改;默认是False,即创建新的对象进行修改,原对象不变,和深复制和浅复制有些类似。

df.sort_values('A', inplace=True)
print("按A列排序:\n", df, '\n')

out:

按A列排序:
     A   B   C   D   brand  years
3   2   6  12  18       C      1
4   5   8  18  14     C++      1
9  10   4   8   6  Python      4
2  16  10   2  12    Java     30
5  20  12   8   6      C#     30

缺失值:

含有nan值的数据排序:

data = {
    'brand':['Python', 'C', 'C++', 'C#', 'Java'],
    'B':[4,6,8,np.nan,10],
    'A':[10,2,5,20,16],
    'D':[6,18,14,6,12],
    'years':[4,1,1,30,30],
    'C':[8,12,18,8,2]
}
index = [9,3,4,5,2]
df = pd.DataFrame(data=data, index = index)
print("df数据:\n", df, '\n')

out:

df数据:
     A     B   C   D   brand  years
9  10   4.0   8   6  Python      4
3   2   6.0  12  18       C      1
4   5   8.0  18  14     C++      1
5  20   NaN   8   6      C#     30
2  16  10.0   2  12    Java     30

B列含有nan值,对B列进行排序,缺失值排在最前面:

print("按B列排序:\n", df.sort_values('B', na_position='first'), '\n')

按B列排序:
     A     B   C   D   brand  years
5  20   NaN   8   6      C#     30
9  10   4.0   8   6  Python      4
3   2   6.0  12  18       C      1
4   5   8.0  18  14     C++      1
2  16  10.0   2  12    Java     30

包含缺失值,缺失值排在最后:

print("按B列排序:\n", df.sort_values('B', na_position='last'), '\n')

out:

按B列排序:
     A     B   C   D   brand  years
9  10   4.0   8   6  Python      4
3   2   6.0  12  18       C      1
4   5   8.0  18  14     C++      1
2  16  10.0   2  12    Java     30
5  20   NaN   8   6      C#     30

到此这篇关于python pandas 数据排序的几种常用方法的文章就介绍到这了,更多相关python pandas内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: python pandas 数据排序的几种常用方法

本文链接: https://www.lsjlt.com/news/120429.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python pandas 数据排序的几种常用方法
    前言: pandas中排序的几种常用方法,主要包括sort_index和sort_values。 基础数据: import pandas as pd import numpy as ...
    99+
    2024-04-02
  • python中pandas排序有几种方式
    这篇文章给大家分享的是有关python中pandas排序有几种方式的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的脚本语言,其...
    99+
    2023-06-15
  • python中几种常用的排序算法
    这篇文章主要介绍“python中几种常用的排序算法”,在日常操作中,相信很多人在python中几种常用的排序算法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python中几...
    99+
    2024-04-02
  • PHP常用几种排序
    php常用的几种排序 1 冒泡排序1.1 描述:1.2 动画:1.3 代码案例: 2 快速排序2.1 描述:2.2 动画:![在这里插入图片描述](https://img-blog.csd...
    99+
    2023-09-05
    排序算法 算法
  • 几种常用的C#排序方法分别是什么
    几种常用的C#排序方法分别是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。这五种C#排序方法,其实在其他语言平台中也是常见的,因此C#排序方法也可以说是其他语言的排序方法,...
    99+
    2023-06-17
  • Python数据分析Pandas Dataframe排序操作的方法
    本文小编为大家详细介绍“Python数据分析Pandas Dataframe排序操作的方法”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python数据分析Pandas Dataframe排序操作的方法”文章能帮助大家...
    99+
    2023-06-30
  • PHP常见的几种排序算法介绍
    这篇文章主要介绍“PHP常见的几种排序算法介绍”,在日常操作中,相信很多人在PHP常见的几种排序算法介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP常见的几种排序算法...
    99+
    2024-04-02
  • 盘点几种常见的java排序算法
    目录1.插入排序2.分治排序法,快速排序法3.冒泡排序 low版4.冒泡排序 bigger版5.选择排序6. 归并排序8. 堆排序9. 其他排序10. 比较总结1.插入排序 这个打...
    99+
    2024-04-02
  • c语言实现的几种常用排序算法
    概述 最近重新回顾了一下数据结构和算法的一些基本知识,对几种排序算法有了更多的理解,也趁此机会通过博客做一个总结。 1.选择排序-简单选择排序 选择排序是最简单的一种基于O(n2)时...
    99+
    2024-04-02
  • Python实现排序方法常见的四种
    1.冒泡排序,相邻位置比较大小,将比较大的(或小的)交换位置 def maopao(a): for i in range(0,len(a)): for j...
    99+
    2024-04-02
  • java中几种常见的排序算法总结
    目录本节目标;【插入排序】【优化版】【希尔排序】【选择排序】【堆排序】 【冒泡排序】介绍一个冒泡排序的优化方法; 【快速排序】【归并排序】【正文】【代码简介;】&...
    99+
    2024-04-02
  • 100天精通Python(数据分析篇)——第70天:Pandas常用排序、排名方法(sort_index、sort_values、rank)
    文章目录 一、按索引排序:sort_index() 1. Series类型排序 1)升序 2)降序 2. Data...
    99+
    2023-09-01
    python 数据分析 pandas
  • Python常见的几种数据加密方式
    目录一、md5加密解密增加破解成本的方法SHA1安全哈希算法二、Base64伪加密三、DES/AESAES和DES的区别破解方法四、RSA非对称加密算法使用流程和场景介绍公钥私钥生成...
    99+
    2024-04-02
  • java中几种常见的排序算法是什么
    java中几种常见的排序算法是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1 排序       排序,就是使一串记录,按照其中某个...
    99+
    2023-06-29
  • JavaScript中几种常用的排序算法分别是哪些
    JavaScript中几种常用的排序算法分别是哪些,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。插入排序<html><script>function...
    99+
    2023-06-03
  • Java实现几种常见排序算法代码
    稳定度(稳定性)一个排序算法是稳定的,就是当有两个相等记录的关键字R和S,且在原本的列表中R出现在S之前,在排序过的列表中R也将会是在S之前。 排序算法分类 常见的有插入(插入排序/...
    99+
    2022-11-15
    Java 排序算法
  • python list的两种排序方法
    python提供了对list排序两种方法 1.使用list内建函数sort排序 list.sort(key=None,reverse=False) eg: In [57]: l=[27,47,3,42,19,9] In [58...
    99+
    2023-01-31
    两种 方法 python
  • python数组排序的方法及常用代码
      python中,数组是指以字符串形式存储的数据结构。在 python中,数组的概念是非常重要的,它可以用于存储一些数值、字符串等,让我们能够快速地访问这些数据。 数组有三种排序方法: 简单排序(sort):可以对数组中的每个元素进行排...
    99+
    2023-08-31
    python 排序算法 算法
  • python发送邮件的几种常用方法
    第一种是最常见的,smtp发送 import smtplibimport sysimport tracebackfrom email.mime.text import MIMETextfrom email.mime.multipart im...
    99+
    2023-09-02
    python 开发语言
  • python下载文件的几种常用方法
    python中下载文件常用的几个模块有urllib,urllib2,requests,方法也很简单,代码如下:# Python 2 code import urllib import urllib2 import requests     ...
    99+
    2023-01-31
    几种 常用 文件
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作