gpt4 book ai didi

python - 在 python 中滚动前 3 个月的唯一总和

转载 作者:太空宇宙 更新时间:2023-11-03 15:54:26 24 4
gpt4 key购买 nike

以下是我正在查看的数据集。

Input:-
Date Name
01/01/2017 A
01/03/2017 B
02/05/2017 A
03/17/2017 C
04/08/2017 D
05/10/2017 B
06/12/2017 D

Output:-
Date Unique Count
Jan 2017 2
Feb 2017 2
Mar 2017 3
Apr 2017 3
May 2017 3
Jun 2017 2

我想滚动获取前 3 个月“姓名”的唯一计数。例如,对于日期 06/12/2017,包括它本身在内的前 3 个月是四月、五月、六月。所以四月有“D”,五月有“B”,六月有“D”。所以 6 月份的唯一计数是 2。对于所有其他月份也是如此。

我正在寻找可以帮助我实现这一目标的 pandas 函数。或者任何可以实现它的自定义代码。

感谢任何帮助。

最佳答案

尝试:

months = pd.to_datetime(d.loc[:, "Date"]).dt.to_period("M")
out = pd.DataFrame([
(month, len(d.loc[(-2 <= months - month) & (months - month <= 0), "Name"].unique()))
for month in months.unique()])

关于python - 在 python 中滚动前 3 个月的唯一总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44478781/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com