按日期时间列将Pandas Dataframe的所有元素分组

时间:2019-01-24 22:56:39

标签: python pandas

想象一下一个包含3列的数据框:

index
A: datetime
B: value 1 or 2

特定日期可能会有更多行。我想制作一个新的数据框,总结每天的价值。所以:

index
A: datetime (1 day)
B: amount of rows which contained value 1 in first dataframe
C: amount of rows which contained value 2 in first dataframe

样本数据:

enter image description here

1 个答案:

答案 0 :(得分:1)

您可以将groupby与以下内容一起使用:

df['count_sentiment'] = df['Sentiment'] == 'positive' # equal to 1 iff the row is positive
df[['Date', 'Likes', 'Rts', 'count_sentiment']].groupby(by='Date').sum()

其中df是您的数据框。 这将按日期分组。如果要按天分组,请用要分组的日期创建另一列Day并将groupby(by='Date')替换为groupby(by='Day')