Pandas 根据条件进行分组和计算

我有以下数据框


DateTime              ID    Number

2020-09-01 09:30:00   1     2

2020-09-01 09:30:00   2     2

2020-09-01 10:30:00   3     2

2020-09-01 10:30:00   4     2

2020-09-01 10:30:00   5     3

2020-09-01 11:30:00   6     3

我必须使用 Datetime 列对上述数据框进行分组,并且必须执行计算:当 Number 列的值为 2 时的 ID 计数/ID 总数。


输出:


DateTime             new_calculated_field

2020-09-01 09:30:00  1

2020-09-01 10:30:00  0.67

2020-09-01 11:30:00  0


料青山看我应如是
浏览 114回答 1
1回答

牧羊人nacy

你的意思是:df['Number'].eq(2).groupby(df['DateTime']).mean()输出:DateTime2020-09-01 09:30:00    1.0000002020-09-01 10:30:00    0.6666672020-09-01 11:30:00    0.000000Name: Number, dtype: float64
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python