• Pandas 数据排序


    Pandas 数据排序

    给大家分享下在 Pandas 中排序的几种常用方法,主要包括 sort_index 和 sort_values 。

    按索引排序

    文中主要使用了 pandas 和 numpy ,首先导入 Python 库,如下:

    import pandas as pd
    import numpy as np
    
    • 1
    • 2
    data = {
    'brand':['Python 数 据 之 道 ',' 价 值 前 瞻 ',' 菜 鸟 数 据 之 道 ','Python','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)
     df
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    在这里插入图片描述

    按行索引排序

    sort_index() 是 pandas 中按索引排序的函数,默认情况下,sort_index 是按行索引来排序。

    df.sort_index()
    #sort_index() 是 pandas 中按索引排序的函数,
    默认情况下,sort_index 是按行索引来排序
    
    • 1
    • 2
    • 3

    在这里插入图片描述
    通过设置参数 ascending 可以设置升序或降序排列,默认情况下是 ascending=True ,为升序排列。
    设置 ascending=False 时,为降序排列,如下:

    df.sort_index(ascending=False)
    
    • 1

    在这里插入图片描述

    按列的名称排序

    通过设置参数 axis=1 可实现按列的名称排序,如下:

    df.sort_index(axis=1)
    
    • 1

    在这里插入图片描述
    同样的,可以设置参数 ascending 的值,如下:

    df.sort_values('B',ascending=False)
    
    • 1

    在这里插入图片描述

    按数值排序

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

    按单个列的值排序

    sort_values() 中设置单个列的列名称,可以对单个列进行排序,通过设置参数 ascending 可以设置升序或
    降序排列,如下:

    df.sort_values('B')
    
    • 1

    在这里插入图片描述

    按多个列的值排序

    同时,sort_values() 可以对多个列进行不同的排序,通过设置列明和排序方式组合来实现,如下:

    df.sort_values('B',ascending=False)
    
    • 1

    在这里插入图片描述
    设置参数 ascending ,years 列为升序,B 列为降序,如下:

    df.sort_values(['years','B'],ascending=[True,False])
    
    • 1

    在这里插入图片描述

    inplace

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

    df.sort_values('B',inplace=True)
    df
    
    • 1
    • 2

    在这里插入图片描述

    Pandas 中将列(column)排序的方法

    import pandas as pd
    import akshare as ak
    data = {
    'brand':['Python 数 据 之 道 ',' 价 值 前 瞻 ',' 菜 鸟 数 据 之 道 ','Python','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],
     } 
    df = pd.DataFrame(data=data)
    df
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    在这里插入图片描述
    在这里插入图片描述

    将列的名称按需要进行手动排序

    然后运行代码如下:

    df[['brand','A','B','C','D','years']]
    
    • 1
    df.loc[:,['brand','A','B','C','D','years']]
    #使用 .loc 方法,通过列的名称来进行排序
    
    • 1
    • 2

    在这里插入图片描述

  • 相关阅读:
    这次把怎么做好一个PPT讲清-总体篇
    软件工程中如何设计测试用例
    HJY-1A18D电压继电器 导轨安装
    acwing 795前缀和
    第八章:动态内存申请
    「SpringCloud Alibaba」Nacos服务注册和中心配置
    Spring 02: 基于xml的Spring接管下的三层项目架构
    加载报错 Unsupported version (not an attribute), or file does not exist
    【Java】数学模块的常见用法。
    高密分子定位技术
  • 原文地址:https://blog.csdn.net/m0_63568001/article/details/126277235