使用 Python 在日期末尾添加一年

Posted

技术标签:

【中文标题】使用 Python 在日期末尾添加一年【英文标题】:Adding a year to the end of a date using Python 【发布时间】:2020-11-24 14:06:56 【问题描述】:

我有一个 DataFrame,其日期为 11 月 28 日和 1 月 12 日。现在像 Nov-28 这样的日期是今年(2020 年),其他日期是明年(2021 年)。

我想知道是否有一种方法可以确定日期是否小于今天以添加明年的年份?

【问题讨论】:

你能分享一下DataFrame吗?日期是字符串还是日期时间对象?需要更多信息才能给出正确答案。请关注***.com/help/minimal-reproducible-example 和这个***.com/questions/20109391/… 【参考方案1】:

想法是首先将实际年份添加到to_datetime,然后测试是否更大,例如now 添加一年offsets.DateOffset

df = pd.DataFrame('date':['Nov-28','Jan-12'])

now = pd.Timestamp('now')

df['date'] = pd.to_datetime(str(now.year) + df['date'], format='%Y%b-%d')

df.loc[df['date'] > now, 'date'] += pd.offsets.DateOffset(years=1)
print (df)
        date
0 2021-11-28
1 2020-01-12

【讨论】:

以上是关于使用 Python 在日期末尾添加一年的主要内容,如果未能解决你的问题,请参考以下文章

如何项sql数据库中添加一年的日期

在 2D numpy 数组的末尾添加一列

使用bat,批量给文件夹里的一堆txt文本 的每行内容末尾,添加一段相同的文字

Python 日期时间datetime 加一天,减一天,加减一小时一分钟,加减一年

SQL 添加一天开始日期

在mysql数据库中添加一整月的日期