dataframe排序

1.sort_values

DataFrame.sort_values(by, axis=0, ascending=True, inplace=False, kind='quicksort', na_position='last')

axis:{0 or ‘index’, 1 or ‘columns’}, default 0,默认按照索引排序,即纵向排序,如果为1,则是横向排序    
by:str or list of str;如果axis=0,那么by="列名";如果axis=1,那么by="行名";  
ascending:布尔型,True则升序,可以是[True,False],即第一字段升序,第二个降序  
inplace:布尔型,是否用排序后的数据框替换现有的数据框  
kind:排序方法,{‘quicksort’, ‘mergesort’, ‘heapsort’}, default ‘quicksort’。似乎不用太关心  
na_position : {‘first’, ‘last’}, default ‘last’,默认缺失值排在最后面

import numpy as np
import pandas as pd
from pandas import DataFrame


data=[["a",2,301],["b",1,201],["c",2,201],["d",1,301],["e",2,301]]
df=pd.DataFrame(data,columns=["A","B","C"])
print(df)
# =============================================================================
#    A  B    C
# 0  a  2  301
# 1  b  1  201
# 2  c  2  201
# 3  d  1  301
# =============================================================================
df.sort_values(by=["C","B"],ascending=[False,True],inplace=True)
print(df)
# =============================================================================
#    A  B    C
# 3  d  1  301
# 0  a  2  301
# 4  e  2  301
# 1  b  1  201
# 2  c  2  201
# =============================================================================

data_1=[[300,2,301],[2,1,201],[3,300,201],[100,1,301],[500,2,301]]
df_1=pd.DataFrame(data_1,columns=["A","B","C"])
print(df_1)
# =============================================================================
#      A    B    C
# 0  300    2  301
# 1    2    1  201
# 2    3  300  201
# 3  100    1  301
# 4  500    2  301
# =============================================================================
df_1.sort_values(by=0,axis=1,inplace=True)
print(df_1)
# =============================================================================
#      B    A    C
# 0    2  300  301
# 1    1    2  201
# 2  300    3  201
# 3    1  100  301
# 4    2  500  301
# =============================================================================

参考:https://blog.csdn.net/wendaomudong_l2d4/article/details/80648633

以上,记录本人学习过程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值