您好,登錄后才能下訂單哦!
一、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或'index')或索引值(axis=1或'columns') |
axis | 若axis=0或'index',則按照指定列中數據大小排序;若axis=1或'columns',則按照指定索引中數據大小排序,默認axis=0 |
ascending | 是否按指定列的數組升序排列,默認為True,即升序排列 |
inplace | 是否用排序后的數據集替換原來的數據,默認為False,即不替換 |
na_position | {‘first',‘last'},設定缺失值的顯示位置 |
三、sort_values用法舉例
創建數據框
#利用字典dict創建數據框 import numpy as np import pandas as pd df=pd.DataFrame({'col1':['A','A','B',np.nan,'D','C'], 'col2':[2,1,9,8,7,7], 'col3':[0,1,9,4,2,8] }) print(df) >>> col1 col2 col3 0 A 2 0 1 A 1 1 2 B 9 9 3 NaN 8 4 4 D 7 2 5 C 7 8
依據第一列排序,并將該列空值放在首位
#依據第一列排序,并將該列空值放在首位 print(df.sort_values(by=['col1'],na_position='first')) >>> col1 col2 col3 3 NaN 8 4 0 A 2 0 1 A 1 1 2 B 9 9 5 C 7 8 4 D 7 2
依據第二、三列,數值降序排序
#依據第二、三列,數值降序排序 print(df.sort_values(by=['col2','col3'],ascending=False)) >>> col1 col2 col3 2 B 9 9 3 NaN 8 4 5 C 7 8 4 D 7 2 0 A 2 0 1 A 1 1
根據第一列中數值排序,按降序排列,并替換原數據
#根據第一列中數值排序,按降序排列,并替換原數據 df.sort_values(by=['col1'],ascending=False,inplace=True, na_position='first') print(df) >>> col1 col2 col3 3 NaN 8 4 4 D 7 2 5 C 7 8 2 B 9 9 1 A 1 1 0 A 2 0
按照索引值為0的行,即第一行的值來降序排序
x = pd.DataFrame({'x1':[1,2,2,3],'x2':[4,3,2,1],'x3':[3,2,4,1]}) print(x) #按照索引值為0的行,即第一行的值來降序排序 print(x.sort_values(by =0,ascending=False,axis=1)) >>> x1 x2 x3 0 1 4 3 1 2 3 2 2 2 2 4 3 3 1 1 x2 x3 x1 0 4 3 1 1 3 2 2 2 2 4 2 3 1 1 3
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。