Pandas数值排序 sort_values()的使用

参数解释

DataFrame.sort_values(by,
               axis=0,
               ascending=True,
               inplace=False,
               kind='quicksort',
               na_position='last', # last,first;默认是last
               ignore_index=False,
               key=None)

参数的具体解释为:

  • by:表示根据什么字段或者索引进行排序,可以是一个或多个
  • axis:排序是在横轴还是纵轴,默认是纵轴axis=0
  • ascending:排序结果是升序还是降序,默认是升序
  • inplace:表示排序的结果是直接在原数据上的就地修改还是生成新的DatFrame
  • kind:表示使用排序的算法,快排quicksort,,归并mergesort, 堆排序heapsort,稳定排序stable ,默认是 :快排quicksort
  • na_position:缺失值的位置处理,默认是最后,另一个选择是首位
  • ignore_index:新生成的数据帧的索引是否重排,默认False(采用原数据的索引)
  • key:排序之前使用的函数

数据值的排序主要使用sort_values(),数字按大小排序,字符按字母顺序

Series和DataFrame都支持此方法

import pandas as pd

df = pd.DataFrame([['liver','E',89,21,24,64],
                   ['Arry','C',36,37,37,57],
                   ['Ack','A',57,60,18,84],
                   ['Eorge','C',93,96,71,78],
                   ['Oah','D',65,49,61,86]
                  ],
                   columns = ['name','team','Q1','Q2','Q3','Q4'])

res1 = df.Q1.sort_values()

# DataFrame 需要传入一个或多个排序的列名
res2 = df.sort_values('Q4')

# 默认排序是升序,但可以指定排序方式
# 下例先按team升序排列,如遇到相同的team再按name降序排列
res3 = df.sort_values(by = ['team','name'], ascending = [True, False])

结果展示

df

res1

res2

res3

扩展

# 其他常用方法如下:
s.sort_values(ascending = False) # 降序
s.sort_values(inplace = True) # 修改生效
s.sort_values(na_position = 'first') # 空值在前
# df按指定字段排列
df.sort_values(by = ['team'])
df.sort_values('Q1')
# 按多个字段,先排team,在同team内再看Q1
df.sort_values(by = ['mean','Q1'])
# 全降序
df.sort_values(by = ['mean','Q1'], ascending = False)
# 对应指定team升Q1降
df.sort_values(by = ['mean','Q1'], ascending = [True, False])

到此这篇关于Pandas数值排序 sort_values()的使用的文章就介绍到这了,更多相关Pandas数值排序 sort_values()内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Pandas之排序函数sort_values()的实现

    一.sort_values()函数用途 pandas中的sort_values()函数原理类似于SQL中的order by,可以将数据集依照某个字段中的数据进行排序,该函数即可根据指定列数据也可根据指定行的数据排序. 二.sort_values()函数的具体参数 用法: DataFrame.sort_values(by='##',axis=0,ascending=True, inplace=False, na_position='last') 参数说明 参数 说明 by 指定列名(axis=0或

  • Pandas数值排序 sort_values()的使用

    参数解释 DataFrame.sort_values(by, axis=0, ascending=True, inplace=False, kind='quicksort', na_position='last', # last,first:默认是last ignore_index=False, key=None) 参数的具体解释为: by:表示根据什么字段或者索引进行排序,可以是一个或多个 axis:排序是在横轴还是纵轴,默认是纵轴axis=0 ascending:排序结果是升序还是降序,默认

  • pandas数值排序的实现实例

    目录 1.按照一列数值进行排序 1.1按照五缺失值的一列进行排序 1.1.1升序排列 1.1.2 降序排列 1.2按照有缺失值的一列进行排序 1.2.1 缺失值显示在最后 1.2.2 缺失值显示在最前面 2.按照多列数值进行排序 本文用到的表格内容如下: 排序前先来看一下原始情形: import pandas as pd ​ df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df) result:    姓名     年龄 

  • pandas的排序、分组groupby及cumsum累计求和方式

    目录 生成一列sum_age 对age 进行累加 生成一列sum_age_new 按照 gender和is_good 对age进行累加 根据不同的性别对年龄进行 等级 排序 对数据排序之后,分组,并累计求和 pandas分组排序功能 生成一列sum_age 对age 进行累加 df['sum_age'] = df['age'].cumsum() print(df) 生成一列sum_age_new 按照 gender和is_good 对age进行累加 df['sum_age_new'] = df.

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

    前言: 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] }

  • pandas数据清洗,排序,索引设置,数据选取方法

    此教程适合有pandas基础的童鞋来看,很多知识点会一笔带过,不做详细解释 Pandas数据格式 Series DataFrame:每个column就是一个Series 基础属性shape,index,columns,values,dtypes,describe(),head(),tail() 统计属性Series: count(),value_counts(),前者是统计总数,后者统计各自value的总数 df.isnull() df的空值为True df.notnull() df的非空值为T

  • Python数据分析Pandas Dataframe排序操作

    目录 1.索引的排序 2.值的排序 前言: 数据的排序是比较常用的操作,DataFrame 的排序分为两种,一种是对索引进行排序,另一种是对值进行排序,接下来就分别介绍一下. 1.索引的排序 DataFrame 提供了sort_index()方法来进行索引的排序,通过axis参数指定对行索引排序还是对列索引排序,默认为0,表示对行索引排序,设置为1表示对列索引进行排序:ascending参数指定升序还是降序,默认为True表示升序,设置为False表示降序, 具体使用方法如下: 对行索引进行降序

  • java数据结构与算法之插入算法实现数值排序示例

    本文实例讲述了java数据结构与算法之插入算法实现数值排序.分享给大家供大家参考,具体如下: 写在这里做个纪念,关键是要理解插入点,在插入点,初始的in和out都在这个插入点,然后通过in自减对数组进行重新排序 public static void insertSort(){ for(int out=1; out<a.length; out++){ int temp = a[out]; int in = out; while(in>0&& a[in-1]>temp){ a

  • Pandas索引排序 df.sort_index()的实现

    df.sort_index()实现按索引排序,默认以从小到大的升序方式排列,如希望按降序排列,传入ascending = False import pandas as pd df = pd.DataFrame([['liver','E',89,21,24,64], ['Arry','C',36,37,37,57], ['Ack','A',57,60,18,84], ['Eorge','C',93,96,71,78], ['Oah','D',65,49,61,86] ], columns = ['

  • pandas的排序和排名的具体使用

    有的时候我们可以要根据索引的大小或者值的大小对Series和DataFrame进行排名和排序. 一.排序 pandas提供了sort_index方法可以根据行或列的索引按照字典的顺序进行排序 a.Series排序 1.按索引进行排序 #定义一个Series s = Series([1,2,3],index=["a","c","b"]) #对Series的索引进行排序,默认是升序 print(s.sort_index()) ''' a 1 b 3

随机推荐