DateTime在Pandas中到季度末



我当前的日期格式是"202003", "202006", "202009"我想把它改成"2020-03-31"、"2020-06-30"、"2020-09-30"。

下面是我的代码:
df6['Date'] = pd.to_datetime(df6['Date'], format = "%Y%m").dt.strftime('%Y-%m-%d')
df6['Date'] = df6['Date'] + pd.offsets.QuarterEnd(0)
TypeError: unsupported operand type(s) for +: 'pandas._libs.tslibs.offsets.QuarterEnd' and 'str'

我该如何解决这个问题?

在之前添加日期偏移使用strftime, Ex:

转换为字符串
import pandas as pd
df = pd.DataFrame({"Date": ["202003", "202006", "202009"]})
df['Date'] = pd.to_datetime(df['Date'], format="%Y%m") + pd.offsets.QuarterEnd(0)
df['Date_str'] = df['Date'].dt.strftime('%Y-%m-%d')
df.head()
Date    Date_str
0 2020-03-31  2020-03-31
1 2020-06-30  2020-06-30
2 2020-09-30  2020-09-30
df.dtypes
Date        datetime64[ns]
Date_str            object
dtype: object

最新更新