簡體   English   中英

按 Groupby 中的日期聚合 Pandas DataFrame 計數

[英]Aggregate Pandas DataFrame Counts by Dates in Groupby

我有一個 Pandas DataFrame ,其中包含第一個和最后一個日期列,我從中構建了一個dr字段,其中包含范圍內的日期列表:

_id     FID     first_seen    last_seen     dr
607abc  1925    2020-11-13    2021-04-22    DatetimeIndex(['2020-11-13', '2020-11-14', '20...])
608abd  1925    2021-03-05    2021-03-07    DatetimeIndex(['2021-03-05', '2021-03-06', '20...])
442xae  1331    2020-05-05    2021-04-22    DatetimeIndex(['2020-05-05', '2021-04022', '20...])
...

對於每個FID ,對於與該 FID 相關聯的每個日期,我需要獲取該日期的_id計數。 例如,從上面,如下:

FID     date          count(_id)
1925    2020-11-13    44
1925    2020-11-14    46
...
1925    2021-04-22    61
1331    2020-05-05    189
1331    2020-05-06    190
...

我知道我需要先按 FID 分組,然后得到 first_seen 的最小值和 last_seen 的最大值,然后我就卡住了......

讓我們嘗試explode

df.explode('dr').groupby(['FID','dr']).size()

或者我們可以在這里嘗試value_counts

df.explode('dr').value_counts(['FID','dr'])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM