python - 将字符串转换为日期时间 - 'Feb' 月未解析

标签 python datetime pandas

我有一系列如下格式的字符串对象:

lcd['dates'] = ['Sep-2014', 'Feb-2014', 'Apr-2014', 'Oct-2013', 'Oct-2014',...]

我正在尝试将它们转换为日期时间格式(四舍五入为天),如下所示:

lcd['new dates'] = [pd.to_datetime(j, unit = "D",exact=False) for j in lcd.dates]

这似乎适用于除 2 月以外的所有月份:

In: lcd['new_dates'].unique():

Out:Timestamp('2013-05-29 00:00:00'), Timestamp('2015-03-29 00:00:00'),
   Timestamp('2012-06-29 00:00:00'), 'Feb-2015',
   Timestamp('2012-12-29 00:00:00'), Timestamp('2014-07-29 00:00:00'),
   Timestamp('2014-09-29 00:00:00'), 'Feb-2014',...

我被难住了。

最佳答案

您可以这样指定格式:

import pandas as pd

lcd = ['Sep-2014', 'Feb-2014', 'Feb-2015', 'Apr-2014', 'Oct-2013', 'Oct-2014',]
lcd = [pd.to_datetime(j, unit = "D", format='%b-%Y') for j in lcd]
print lcd

打印:

[Timestamp('2014-09-01 00:00:00'), Timestamp('2014-02-01 00:00:00'), Timestamp('2015-02-01 00:00:00'), Timestamp('2014-04-01 00:00:00'), Timestamp('2013-10-01 00:00:00'), Timestamp('2014-10-01 00:00:00')]

还可以查看 datetime 的所有格式选项.

关于python - 将字符串转换为日期时间 - 'Feb' 月未解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30539982/

相关文章:

python - 检查输入 : expected conv2d_1_input to have shape (3, 32, 32) 时出错,但得到形状为 (32, 32, 3) 的数组

python - 跳过没有装饰器语法的单元测试测试

mysql - mysql 中的日期时间数据类型

datetime - 如何在SSRS报告中以给定的字符串格式显示时间值?

powershell - 在 PowerShell 中传递格式数组时 DateTime TryParseExact 失败

python - 如何获取 Pandas 数据框中单元格值的长度?

python - MySQL Django 模型中的 boolean 字段?

python - IP 地址 - 从 30 秒列表中找到下一个可用的 30 网络?

python - 从一个数据框中删除另一个数据框的列中的元素

python - 如何在一个轴上绘制两个 barh?