尝试在数据框中创建一个新列,该列显示从现在到过去日期之间的天数。到目前为止,我有下面的代码,但是它返回“ days”和一个时间戳。我该如何获得天数?
import pytz
now = datetime.datetime.now(pytz.utc)
excel1['days_old'] = now - excel1['Start Time']
返回:
92 days 08:08:06.667518
答案 0 :(得分:1)
excel1 ['days_old']将保存“ timedeltas”。要使它们达到日差,只需使用“ .days”,如下所示:
import pytz
now = datetime.datetime.now(pytz.utc)
excel1['days_timedelta'] = now - excel1['Start Time']
excel1['days_old'] = excel1['days_timedelta'].days
答案 1 :(得分:1)
假设开始时间列为 datetime 类型,请运行:
(pd.Timestamp.now() - df['Start Time']).dt.days
答案 2 :(得分:0)
也为我工作
import datetime
import pytz
now = datetime.datetime.now(pytz.utc)
excel1['days_old'] = (now - excel1['Start Time']).astype('timedelta64[D]')