繁体   English   中英

如何找到以天为单位的两个格式化日期之间的差异?

[英]How to find the difference between two formatted dates in days?

我有一个具有以下内容的pandas DataFrame:

df =
  start      end
  01/April   02/May
  12/April   12/April

我需要添加一列,其中包含end值和start值之间的差异(天)( end - start )。

我该怎么做?

我尝试了以下方法:

import pandas as pd

df.startdate = pd.datetime(df.start, format='%B/%d')
df.enddate = pd.datetime(df.end, format='%B/%d')

但是不确定这是否是正确的方向。

这是一种方式。

df['start'] = pd.to_datetime(df['start']+'/2018', format='%d/%B/%Y')
df['end'] = pd.to_datetime(df['end']+'/2018', format='%d/%B/%Y')

df['diff'] = df['end'] - df['start']

#        start        end    diff
# 0 2018-04-01 2018-05-02 31 days
# 1 2018-04-12 2018-04-12  0 days
import pandas as pd
df = pd.DataFrame({"start":["01/April", "12/April"], "end": ["02/May", "12/April"]})
df["start"] = pd.to_datetime(df["start"])
df["end"] = pd.to_datetime(df["end"])
df["diff"] = (df["end"] - df["start"])

输出:

         end      start    diff
0 2018-05-02 2018-04-01 31 days
1 2018-04-12 2018-04-12  0 days

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM