日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

Pandas數(shù)值排序?sort_values()的使用_python

作者:山茶花開時。 ? 更新時間: 2022-09-16 編程語言

參數(shù)解釋

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

參數(shù)的具體解釋為:

  • by:表示根據(jù)什么字段或者索引進(jìn)行排序,可以是一個或多個
  • axis:排序是在橫軸還是縱軸,默認(rèn)是縱軸axis=0
  • ascending:排序結(jié)果是升序還是降序,默認(rèn)是升序
  • inplace:表示排序的結(jié)果是直接在原數(shù)據(jù)上的就地修改還是生成新的DatFrame
  • kind:表示使用排序的算法,快排quicksort,,歸并mergesort, 堆排序heapsort,穩(wěn)定排序stable ,默認(rèn)是 :快排quicksort
  • na_position:缺失值的位置處理,默認(rèn)是最后,另一個選擇是首位
  • ignore_index:新生成的數(shù)據(jù)幀的索引是否重排,默認(rèn)False(采用原數(shù)據(jù)的索引)
  • key:排序之前使用的函數(shù)

數(shù)據(jù)值的排序主要使用sort_values(),數(shù)字按大小排序,字符按字母順序

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')
 
# 默認(rèn)排序是升序,但可以指定排序方式
# 下例先按team升序排列,如遇到相同的team再按name降序排列
res3 = df.sort_values(by = ['team','name'], ascending = [True, False])

結(jié)果展示

df

res1

res2

res3

擴(kuò)展

# 其他常用方法如下:
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內(nèi)再看Q1
df.sort_values(by = ['mean','Q1'])
# 全降序
df.sort_values(by = ['mean','Q1'], ascending = False)
# 對應(yīng)指定team升Q1降
df.sort_values(by = ['mean','Q1'], ascending = [True, False])

原文鏈接:https://blog.csdn.net/Hudas/article/details/122921600

欄目分類
最近更新