pandas 单列排序&多列排序

import pandas as pd 
import os 
os.chdir(r'C:\Users\Hans\Desktop\data_analysis')
df = pd.read_excel('pandas_multiindex.xls')
df.head()
日期 收盘 开盘 交易量 涨跌幅 公司
0 2020年5月27日 201.18 202.64 202.64 196.77 23.61M -0.0027 BABA
1 2020年5月26日 201.72 205.96 206.69 201.16 28.68M 0.0101 BABA
2 2020年5月22日 199.70 203.23 204.88 198.99 51.98M -0.0587 BABA
3 2020年5月21日 212.16 210.91 214.51 209.54 29.85M -0.0214 BABA
4 2020年5月20日 216.79 220.12 221.10 210.78 38.32M -0.0019 BABA
#(1)单列排序
df.sort_values(by = '涨跌幅',ascending=False).head()
日期 收盘 开盘 交易量 涨跌幅 公司
27 2020年5月18日 55.53 51.88 55.60 51.88 28.51M 0.0920 JD
6 2020年5月18日 215.28 212.30 215.47 210.51 23.65M 0.0570 BABA
22 2020年5月26日 52.60 52.25 54.46 52.25 21.41M 0.0541 JD
55 2020年5月11日 15.66 15.18 15.84 15.14 9.33M 0.0524 JSR
56 2020年5月8日 14.88 14.20 15.18 14.10 7.72M 0.0523 JSR
#(2)多列排序
df.sort_values(by = ['高','涨跌幅'],ascending=False).head()#by=一个列表,默认是升序排列ascending = True
日期 收盘 开盘 交易量 涨跌幅 公司
4 2020年5月20日 216.79 220.12 221.10 210.78 38.32M -0.0019 BABA
5 2020年5月19日 217.20 217.00 220.57 215.31 21.44M 0.0089 BABA
6 2020年5月18日 215.28 212.30 215.47 210.51 23.65M 0.0570 BABA
3 2020年5月21日 212.16 210.91 214.51 209.54 29.85M -0.0214 BABA
10 2020年5月12日 200.31 206.95 208.05 200.02 17.83M -0.0248 BABA
df.sort_values(by = ['高','涨跌幅'],ascending=[True,False]).head()#即分别按照“高”升序,"涨跌幅"降序排列
日期 收盘 开盘 交易量 涨跌幅 公司
60 2020年5月4日 13.30 13.68 13.68 13.12 3.93M -0.0390 JSR
59 2020年5月5日 13.70 13.54 13.84 13.48 2.62M 0.0301 JSR
62 2020年4月28日 13.78 13.30 13.86 12.92 6.49M 0.0424 JSR
61 2020年4月29日 13.84 13.70 13.92 13.56 4.06M 0.0044 JSR
58 2020年5月6日 13.94 13.80 14.16 13.70 7.29M 0.0175 JSR

你可能感兴趣的:(python笔记,python)