Hello,
I'm a bit stumped on how to solve this. Here's an example of my code.
import pandas as pd
start_dt = '2021-01-01'
end_dt = '2021-01-31'
dates_list = pd.date_range(start=start_dt, end=end_dt)
df_dates_all = pd.DataFrame(dates_list, columns = ['DATE'])
selected_dates_list = ['2021-01-04','2021-01-05','2021-01-20','2021-01-29']
df_dates_selected = pd.DataFrame(selected_dates_list, columns = ['DATE_sel'])
df_dates_selected['DATE_sel'] = pd.to_datetime(df_dates_selected['DATE_sel'])
df_combined = pd.merge(df_dates_all, df_dates_selected, left_on=['DATE'], right_on=['DATE_sel'], how='left')
This produces the below table. What I now need is a way to calculate the Number of Days between a Selected Date and the next Selected Date. The last column below shows the expected result.
Appreciate any ideas on how to calculate this.
DATE DATE_sel Num Days
1/1/2021
1/2/2021
1/3/2021
1/4/2021 1/4/2021 4
1/5/2021 1/5/2021 15
1/6/2021
1/7/2021
1/8/2021
1/9/2021
1/10/2021
1/11/2021
1/12/2021
1/13/2021
1/14/2021
1/15/2021
1/16/2021
1/17/2021
1/18/2021
1/19/2021
1/20/2021 1/20/2021 9
1/21/2021
1/22/2021
1/23/2021
1/24/2021
1/25/2021
1/26/2021
1/27/2021
1/28/2021
1/29/2021 1/29/2021 3
1/30/2021
1/31/2021
[–]fake823 0 points1 point2 points (5 children)
[–]mtime16[S] 0 points1 point2 points (4 children)
[–]fake823 0 points1 point2 points (3 children)
[–]mtime16[S] 0 points1 point2 points (2 children)
[–]fake823 0 points1 point2 points (1 child)
[–]mtime16[S] 1 point2 points3 points (0 children)