python - 将列转换为日期时间的有效方法

标签 python datetime

我有一个数据框,其中的列(对象)的值为 18-JUN-18 12.00.00.000000000 AM

我只需要获取“18-JUN-18”,然后将该列转换为日期时间。

下面的代码花费了大量时间,因为我的数据帧很大:

frame['PURCHASE_DATE'] = frame['PURCHASE_DATE'].apply(lambda x: str(x)[:10])
frame['PURCHASE_DATE'] = pd.to_datetime(frame.PURCHASE_DATE)

有没有办法优化它?

最佳答案

可以使用strptime直接转换日期:

from datetime import datetime

frame['PURCHASE_DATE'] = datetime.strptime(frame['PURCHASE_DATE'][:9], '%d-%b-%y')

不过我不确定这是否更有效。

关于python - 将列转换为日期时间的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55082203/

相关文章:

python - response.info().getencoding() 的实现在 urllib2 中被破坏了吗?

python - 如何在 python 2.7.5 和 mysql 5.6 上安装 mysql

sql - Postgresql - 选择日期 = "01/01/11"的内容

java - 优化 MySQL 中的日期查询

python - 类型错误 : descriptor 'date' for 'datetime.datetime' objects doesn't apply to a 'int' object

python - 在日志中使用模块名称登录多个类

python - 如何调试 Python 日志记录配置文件错误

python - 如何在 Python 3.7 中正确地 requests.put

c# - 使用 C# 将系统日期转换为 M/d/yyyy 格式,而不管系统格式如何

c# - 根据到达时间和旅行时间计算发射时间