pandas 从开始日期开始获取列中的天数?

pandas get days in a column from start date?

pandas 从开始日期开始获取列中的天数?

start_date = '01/01/2021' (dd/mm/yyyy)

df

    dates

    2021-01-01
    2021-01-02
    .
    .
    .
    2021-02-01
    .
    .
    .
    2021-06-01           (end date should be current date)

如果总是有 1.1. pandas 解析像 mm/dd/YYYY 这样的日期时间,因为这里的同一天和同一月工作正常,只将字符串传递给 date_range with to_datetimenow,默认period='D',所以省略:

df = pd.DataFrame({'dates':pd.date_range(start_date, pd.to_datetime('now'))})

通过格式 dd/mm/YYYY 转换 start_date 的一般解决方案也使用 format 参数解析 start_date

start_date = '01/05/2021'

df = pd.DataFrame({'dates': pd.date_range(pd.to_datetime(start_date, format='%d/%m/%Y'), 
                                          pd.to_datetime('now'))})

如果你想要数据帧输出:

d = pd.date_range(start_date, pd.to_datetime('now'))
df = pd.DataFrame({'dates': d})