import pandas as pd
df = pd.read_csv("D:\\python39\\pandas\\antlearnpandasmaster\\datas\\beijing_tianqi\\beijing_tianqi_2018.CSV")
'''Pandas数据排序
Series的排序:
Series.sort_values(ascending=True, inplace=False)参数说明:
ascending:默认为True升序排序,为False降序排序;
inplace:是否修改原始Series,True修改,False不修改
DataFrame的排序:
DataFrame.sort_values(by, ascending=True, inplace=False)参数说明:
by:字符串或者List<字符串>,单列排序或者多列排序
ascending: bool或者List,升序还是降序,如果是list对应by的多列
inplace:是否修改原始DataFrame,True修改,False不修改'''
##1.将温度由字符串变为数字
df.loc[:,'bWendu'] = df['bWendu'].str.replace('℃','').astype('int32')
df.loc[:,'yWendu'] = df['yWendu'].str.replace('℃','').astype('int32')
##2.Series排序
ser = df['aqi'].sort_values()#升序排列
ser = df['aqi'].sort_values(ascending = False)#降序排列
ser = df['tianqi'].sort_values()
##3.DataFrame 排序
#1.单列所对应的行进行升序排列
dfr = df.sort_values(by = 'aqi')
#2.单列所对应的行进行降序排列
dfr = df.sort_values(by = 'aqi',ascending = False)
#3.多列排序
#按空气质量等级、最高温度排序,默认升序
dfr = df.sort_values(by = ['aqiLevel','bWendu'])#先按照'aqiLevel'升序排列,再按'bWendu'进行升序排列
#按空气质量等级、最高温度降序排列
dfr = df.sort_values(by = ['aqiLevel','bWendu'],ascending = False)#先按照'aqiLevel'降序排列,再按'bWendu'进行降序排列
#分别指定升序和降序排列
dfr = df.sort_values(by =['aqiLevel','bWendu'],ascending = [True,False])#先按照'aqiLevel'升序排列,再按'bWendu'进行降序排列
print(dfr)
#print(df.head())
Pandas 数据排序
最新推荐文章于 2024-03-11 21:28:53 发布