Pandas之排序函数sort_values()的实现
一、sort_values()函数用途
pandas中的sort_values()函数原理类似于SQL中的orderby,可以将数据集依照某个字段中的数据进行排序,该函数即可根据指定列数据也可根据指定行的数据排序。
二、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创建数据框
importnumpyasnp
importpandasaspd
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)
>>>
col1col2col3
0A20
1A11
2B99
3NaN84
4D72
5C78
依据第一列排序,并将该列空值放在首位
#依据第一列排序,并将该列空值放在首位 print(df.sort_values(by=['col1'],na_position='first')) >>> col1col2col3 3NaN84 0A20 1A11 2B99 5C78 4D72
依据第二、三列,数值降序排序
#依据第二、三列,数值降序排序 print(df.sort_values(by=['col2','col3'],ascending=False)) >>> col1col2col3 2B99 3NaN84 5C78 4D72 0A20 1A11
根据第一列中数值排序,按降序排列,并替换原数据
#根据第一列中数值排序,按降序排列,并替换原数据 df.sort_values(by=['col1'],ascending=False,inplace=True, na_position='first') print(df) >>> col1col2col3 3NaN84 4D72 5C78 2B99 1A11 0A20
按照索引值为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))
>>>
x1x2x3
0143
1232
2224
3311
x2x3x1
0431
1322
2242
3113
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
热门推荐
10 五一公司放假祝福语简短
11 追星女孩的祝福语简短
12 给长辈端午祝福语 简短
13 生日祝福语有诗意简短
14 团圆日祝福语简短
15 中秋商务祝福语简短最新
16 温暖文艺简短祝福语短句
17 男孩上学祝福语简短的
18 入住酒店文案祝福语简短