簡體   English   中英

如何在滿足 x 天之前向 pandas datetime 添加天數,同時保持前一個日期?

[英]How to add days to pandas datetime until x day is met, while keeping the previous date?

這是我的數據目前的樣子:

STARTDATE   ENDDATE 
2021-07-16  2023-09-01

我想復制具有相同信息的行,同時將加 1 添加到開始日期,直到我到達結束日期。

我想要得到什么:

STARTDATE   ENDDATE 
2021-07-16  2023-09-01
2021-07-17  2023-09-01
2021-07-18  2023-09-01
2021-07-19  2023-09-01
......................
2021-08-31  2023-09-01
2021-09-01  2023-09-01

謝謝!

嘗試這個:

df.assign(STARTDATE = [pd.date_range(s,e) for s,e in zip(df['STARTDATE'],df['ENDDATE'])]).explode('STARTDATE')

如果您的起始df沒有日期值,請先嘗試

df = df.apply(pd.to_datetime)

輸出:

    STARTDATE   ENDDATE
0   2021-07-16  2023-09-01
0   2021-07-17  2023-09-01
0   2021-07-18  2023-09-01
0   2021-07-19  2023-09-01
0   2021-07-20  2023-09-01
... ... ...
0   2023-08-28  2023-09-01
0   2023-08-29  2023-09-01
0   2023-08-30  2023-09-01
0   2023-08-31  2023-09-01
0   2023-09-01  2023-09-01

暫無
暫無

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

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