首页 > 解决方案 > 日期差异熊猫

问题描述

您好,我正在尝试对 pandas df 进行简单的日期差异。以下是我正在使用的 DF 示例:

df = pd.DataFrame.from_records([
    {'id':277176, 'Date1':'3/22/2021', 'Date2':'4/22/2021'}
    ], index='id)

|     id | Date1    | Date2     |
|-------:|:----------|:----------|
| 277176 | 3/22/2021 | 4/22/2021 |

下面是我用来计算日期差异的代码

date1 = df['Date1']
date2 = df['Date2'] 

date1 = pd.to_datetime(date1)
date2 = pd.to_datetime(date2)

df['Date_diff'] = (date1-date2)

以下是我得到的不正确的输出:

573    NaT 
Name: Date1, dtype: timedelta64[ns]

标签: pandas

解决方案


当我重新创建您的问题时,我没有遇到任何问题:

df['Datet1'] = pd.to_datetime(df['Datet1'])
df['Date2'] = pd.to_datetime(df['Date2'])

df['Date_diff'] = df['Datet1'] - df['Date2']

|     id | Datet1              | Date2               | Date_diff          |
|-------:|:--------------------|:--------------------|:-------------------|
| 277176 | 2021-03-22 00:00:00 | 2021-04-22 00:00:00 | -31 days +00:00:00 |

您是否有可能有多个副本,df其中某些日期为空?


推荐阅读