【问题标题】:Convert year string into datetime object将年份字符串转换为日期时间对象
【发布时间】:2023-04-09 06:21:01
【问题描述】:
我的数据框中有一个日期列,其中包含这样的字符串...'201512'
我想将其转换为仅一年的日期时间对象以进行时间序列分析。
我试过了……
df['Date']= pd.to_datetime(df['Date'])
和类似的东西
datetime.strptime(Date, "%Y")
【问题讨论】:
-
-
-
什么是Date?如果我们甚至不知道您正在使用什么进行计算,我们真的无法提供太多帮助。我建议按照here 的描述将您的帖子编辑成 MCVE
-
标签:
python
pandas
dataframe
datetime
【解决方案1】:
我不确定datetime 与pandas 数据帧的接口如何(如果有特殊用法,也许有人会评论),但通常datetime 函数会这样工作:
import datetime
date_string = "201512"
date_object = datetime.datetime.strptime(date_string, "%Y%m")
print(date_object)
得到我们:
2015-12-01 00:00:00
现在创建datetime 对象的困难部分已经完成,我们只需
print(date_object.year)
这吐出了我们想要的
2015
有关解析运算符(我的代码的“%Y%m”位)的更多信息在in the documentation中进行了描述
【解决方案2】:
我会看看模块arrow
https://arrow.readthedocs.io/en/latest/
import arrow
date = arrow.now()
#example of text formatting
fdate = date.format('YYYY')
#example of converting text into datetime
date = arrow.get('201905', 'YYYYMM').datetime