首页 > 解决方案 > 计算列表最后一天和今天之间的天数

问题描述

我在理解如何获得几天的结果时遇到了一些问题,我可以检查它是否大于诸如此类的数字5/10/12/15...

import datetime 
import pandas as pd
list_dates=[]
file_list = ["2021-05-05","2021-05-07"]
for fname in file_list:
      list_dates.append(fname)
df=pd.DataFrame(columns=["Data"])
for row in list_dates:
   date_time_obj = datetime.datetime.strptime(row, '%Y-%m-%d')
   df.loc[row] = date_time_obj  
last = df.iloc[-1]                 
miss = (datetime.datetime.now() - last)
print(miss)

这段代码给我一个像时间增量一样的结果:

Data   34 days 00:03:58.032944
Name: 2021-05-07, dtype: timedelta64[ns]

在原始代码中,我没有file_list直接使用这些数据,但我从这部分上方的代码中获取了这些数据

标签: pythonlistdataframedatetime

解决方案


miss本身是一个熊猫系列,包含一个元素,类型为timedelta64[ns].

要从timedelta64[ns]对象中提取天数,您可以简单地运行my_timedelta.days- 在您的情况下,miss[0].days.

要将这样的操作应用于 pandas 系列的每个元素,您可以使用miss.dt.days.


推荐阅读