gpt4 book ai didi

python - 如何使用动态日期范围计算唯一值

转载 作者:行者123 更新时间:2023-12-01 06:31:17 25 4
gpt4 key购买 nike

让我们假设有这个数据框:

Date       | ID
2014-01-01 | 134
2014-01-02 | 154
2014-01-03 | 123
...
2019-12-31 | 12433

对于每一行,我需要获取日期值并在 x 天前 checkin 相同的 DataFrame,直到日期值并计算唯一 ID 值。像这样的东西:

Date       | ID  | UniqueIDs_x_days_ago
2014-01-01 | 134 |unique ID values between (2014-01-01 - x days) and 2014-01-01
2014-01-02 | 154 |unique ID values between (2014-01-02 - x days) and 2014-01-02
2014-01-03 | 123 |unique ID values between (2014-01-03 - x days) and 2014-01-03
...
2019-12-31 | 12433 |unique ID values between (2019-12-31 - x days) and 2019-12-31

不幸的是我有一个大数据框,所以如果可能的话我也想知道最快的方法。

最佳答案

您可以首先计算开始日期,然后对日期范围进行切片并计算唯一 ID。

x = 90

df['Date_Start'] = df.Date - pd.offsets.Day(x)
df=df.set_index('Date').sort_index()
df['UniqueIDs_x_days_ago'] = df.apply(lambda x: df.loc[x.Date_Start: x.name].ID.nunique(), axis=1)
df = df.reset_index()

关于python - 如何使用动态日期范围计算唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59905504/

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