[英]how to create column that count number of rows per each date of id
我有這樣的df
id datetime
0 a 2022-01-18
1 a 2022-01-19
2 a 2022-01-20
3 b 2022-01-20
4 b 2022-01-20
5 c 2022-01-18
我想要 df 看起來像
id 2022-01-20 2022-01-19 2022-01-18
0 a 1 1 1
1 b 2 0 0
2 c 0 0 1
我試過了
df.groupby(['id', 'datetime']).size()
id datetime
a 2022-01-18 1
2022-01-19 1
2022-01-20 1
b 2022-01-20 2
c 2022-01-18 1
它返回系列不是 dataframe 接近但仍然不是我想要的。 請幫忙
您可以使用以下代碼執行此操作
df = df.groupby(['id','date']).size().unstack(fill_value=0).reset_index()
df.columns.name = None
結果
df.head()
id 2022-01-18 2022-01-19 2022-01-20
0 a 1 1 1
1 b 0 0 2
2 c 1 0 0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.