Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

Days Difference between two consecutive Dates in datetime.index column in pandas dataframe

Below is my Dataframe df which contains datetime index.

              Open        High        Low        Close         Volume   Currency
Date                        
2021-04-20  14526.70    14526.95    14207.30    14296.40    456704720896    INR
2021-04-22  14219.15    14424.75    14151.40    14406.15    516985257984    INR
2021-04-23  14326.35    14461.15    14273.30    14341.35    476613607424    INR
2021-04-26  14449.45    14557.50    14421.30    14485.00    448533331968    INR
2021-04-27  14493.80    14667.55    14484.85    14653.05    442211696640    INR
... ... ... ... ... ... ...
2022-04-19  17258.95    17275.65    16824.70    16958.65    401400000   INR
2022-04-20  17045.25    17186.90    16978.95    17136.55    286070016   INR
2022-04-21  17234.60    17414.70    17215.50    17392.60    285200000   INR
2022-04-22  17242.75    17315.30    17149.20    17171.95    262740000   INR
2022-04-25  17006.10    17052.10    16889.75    16953.95    275571  INR

I want to Calculate the differece between two consecutive "Date" in datetime.index coloumn.

I tried by using below code, but it’s not working if difference between two dates is big.
Code-

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

df['date'] = df.index.day  #Extract day from datetime.index
df['difference'] = df['date'].diff()
df

Output

             Open       High        Low          Close     Volume   Currency    date    difference
Date                                
2021-04-20  14526.70    14526.95    14207.30    14296.40    456704720896    INR 20  NaN
2021-04-22  14219.15    14424.75    14151.40    14406.15    516985257984    INR 22  2.0
2021-04-23  14326.35    14461.15    14273.30    14341.35    476613607424    INR 23  1.0
2021-04-26  14449.45    14557.50    14421.30    14485.00    448533331968    INR 26  3.0
2021-04-27  14493.80    14667.55    14484.85    14653.05    442211696640    INR 27  1.0
... ... ... ... ... ... ... ... ...
2022-04-19  17258.95    17275.65    16824.70    16958.65    401400000   INR 19  1.0
2022-04-20  17045.25    17186.90    16978.95    17136.55    286070016   INR 20  1.0
2022-04-21  17234.60    17414.70    17215.50    17392.60    285200000   INR 21  1.0
2022-04-22  17242.75    17315.30    17149.20    17171.95    262740000   INR 22  1.0
2022-04-25  17006.10    17052.10    16889.75    16953.95    275571  INR 25  3.0
252 rows × 8 columns

Pls let me know solution to calculate the Date difference in Days between two consecutive rows in pandas

>Solution :

If need count values per Currency use DataFrameGroupBy.diff:

df['difference'] = df.index.to_series().groupby(df['Currency']).diff().dt.days

If need without groups use Series.diff:

df['difference'] = df.index.to_series().diff().dt.days
Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading