猿问

Pandas:如何为其他列中的每个值按时间分组

我有一个像这样的数据框:


column-one   column-two      column-3     column-4     column-5    date

 aaa           qqq             cat1         dsj           dak     2010-01-01 20:00:00

 ooo           www             cat2         fnk           qwe     2011-01-02 19:00:00

 oll           wee             cat2         fek           wqw     2011-03-02 22:00:00

第 3 列包含数据框中的类别。大约有 10-12 个单独的类别。对于每个类别,我试图计算它在“日期”列中每次(小时/日期等)出现的次数。我最终希望能够单独绘制每个类别的结果。以及能够将我的结果存储在数据框中。


这个问题困扰了我很久。如果有人有任何建议,请告诉我。或者,如果您需要更多信息。谢谢!


汪汪一只猫
浏览 185回答 2
2回答

慕森卡

我想你可能正在寻找这个? df.groupby(['date', 'column-3']).size()

拉丁的传说

理解你的问题有点困难。这个答案是对你对@Sina Shabani 的评论的回应。如果您只想一次获取一列的信息,您可以使用: col_val_i_want = 'cat1' # Define what you want mask = df['column-3'].eq(col_val_i_want) # Create a filter df[mask].groupby('date').count() # Group by and get the count
随时随地看视频慕课网APP

相关分类

Python
我要回答