pandas 数据框组并按工作日排序 [英] pandas dataframe group and sort by weekday
本文介绍了 pandas 数据框组并按工作日排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有包含Day of Week
列的pandas DataFrame.
I have pandas DataFrame that includes Day of Week
column.
df_weekday = df.groupby(['Day of Week']).sum()
df_weekday[['Spent', 'Clicks', 'Impressions']].plot(figsize=(16,6), subplots=True);
在数据框上按字母顺序显示星期几":'Friday', 'Monday', 'Saturday', 'Sunday' , 'Tuesday' , 'Thursday', 'Wednesday'
.
plot the DataFrame displays 'Day of Week' in alphabetical order: 'Friday', 'Monday', 'Saturday', 'Sunday' , 'Tuesday' , 'Thursday', 'Wednesday'
.
我如何以正确的工作日顺序'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'
排序和显示df_weekday. ?
how can i sort and display df_weekday in proper weekday order 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'
. ?
推荐答案
您可以使用按顺序分类:
cats = [ 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
df['Day of Week'] = df['Day of Week'].astype('category', categories=cats, ordered=True)
在pandas 0.21.0+
中使用:
from pandas.api.types import CategoricalDtype
cat_type = CategoricalDtype(categories=cats, ordered=True)
df['Day of Week'] = df['Day of Week'].astype(cat_type)
或 reindex
:
df_weekday = df.groupby(['Day of Week']).sum().reindex(cats)
这篇关于 pandas 数据框组并按工作日排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文