pandas - 数据排序和排名

sort_values()函数

import pandas as pd


data = {
    '名称': ['太阳能', '', '风扇', '沙发'],
    '单价': [2000, 3500, 500, 3500],
    '数量': [58, 23, 69, 60]

}
df = pd.DataFrame(data)

# 单条件排序,使用 sort_values() 方法按照指定列的值对 DataFrame 进行排序。可以通过设置 by 参数指定要排序的列名
# df = df.sort_values(by='数量', ascending=False)  # 排序, ascending默认T升序,False 降序
# 如果要按照多个列进行排序,可以传入包含多个列名的列表到 by 参数,并设置 ascending 参数来指定升序或降序排序。
df1 = df.sort_values(by=['单价', '数量'], ascending=True)  # 单个排列规则
df2 = df.sort_values(by=['单价', '数量'], ascending=[True, False])  # 多个排列规则。单价升序排列,数量降序排列
print(df2)

 

 

# 单条件排序
# df = df.sort_values(by='数量', ascending=False)  # 排序, ascending默认T升序,False 降序
# 根据多条件排序
df1 = df.sort_values(by=['单价', '数量'], ascending=False)  # 单个排列规则
df2 = df.sort_values(by=['单价', '数量'], ascending=[True, False])  # 多个排列规则
df1['排名'] = df2['数量'].rank(method='max', ascending=False)
print(df1)

 

posted @ 2024-03-11 16:53  徐俊112  阅读(105)  评论(0)    收藏  举报