首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将DataFrame列类型从字符串转换为日期时间

将DataFrame列类型从字符串转换为日期时间
EN

Stack Overflow用户
提问于 2013-06-16 23:14:59
回答 4查看 542.3K关注 0票数 392

如何将字符串(采用dd/mm/yyyy格式)的DataFrame列转换为datetimes?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-06-16 23:18:23

最简单的方法是使用to_datetime

代码语言:javascript
复制
df['col'] = pd.to_datetime(df['col'])

它还为欧洲时报提供了一个dayfirst论点(但要小心this isn't strict)。

这就是它的实际作用:

代码语言:javascript
复制
In [11]: pd.to_datetime(pd.Series(['05/23/2005']))
Out[11]:
0   2005-05-23 00:00:00
dtype: datetime64[ns]

您可以传递特定的format

代码语言:javascript
复制
In [12]: pd.to_datetime(pd.Series(['05/23/2005']), format="%m/%d/%Y")
Out[12]:
0   2005-05-23
dtype: datetime64[ns]
票数 601
EN

Stack Overflow用户

发布于 2017-06-26 22:35:28

如果您的date列是一个格式为'2017-01-01‘的字符串,您可以使用pandas astype将其转换为datetime。

df['date'] = df['date'].astype('datetime64[ns]')

或者,如果您想要日精度而不是纳秒,请使用datetime64D

print(type(df_launath['date'].iloc[0]))

收益率

与使用pandas.to_datetime时的<class 'pandas._libs.tslib.Timestamp'>相同

您可以尝试使用其他格式,然后是'%Y-%m-%d‘,但至少这是有效的。

票数 51
EN

Stack Overflow用户

发布于 2018-05-02 16:14:17

如果要指定复杂的格式,可以使用以下内容:

代码语言:javascript
复制
df['date_col'] =  pd.to_datetime(df['date_col'], format='%d/%m/%Y')

有关format的更多详细信息,请单击此处:

Python 2 https://docs.python.org/2/library/datetime.html#strftime-strptime-behavior

票数 42
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17134716

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档