我有一个看起来像这样的Pandas数据框-
ID |发布日期|主题
1 | 2020-03-11 |法律
2 | 2020-03-16 |房屋
3 | 2020-03-18 |房屋
4 | 2020-04-06 |法律
5 | 2020-04-08 |税
Published Date
是datetime64 [ns]列。
我想在绘图时间序列线图中显示每个主题每周的出版量(按主题分组的每周出版物数)。我不确定在使用Plotly之前应该对数据进行分组,还是Plotly具有可以帮助我完成此操作的功能。
任何帮助将不胜感激。
如果您将Published Date
列作为DateTime列,则可以执行以下操作:
# create new column with week-of-year value
df['Week'] = df['Published Date'].dt.week
# groupby week + topic (or vise-versa)
gb = df.groupby(['Week', 'Topic']
volume = gb.size()
这将为您提供最终的DataFrame,向您显示每个星期主题分组的大小(每组的行数)。
如果您的列不是DateTime格式,只需在列上使用pd.to_datetime
即可将其转换为(docs)。