当前位置: 首页 > 知识库问答 >
问题:

将字符串转换为日期格式:DD-MMM-YYYY转换为Python中的日期时间[重复]

汝弘深
2023-03-14

我有一个pandas数据框,其中一列包含如下字符串

01-May-2012  16:44:55.113
01-Jun-2012  18:49:57.466
01-May-2012  14:64:45.119
01-May-2012  14:23:55.113

我想把它转换成以下格式。

2012-05-01 16:44:55.113
2012-06-01 18:49:57.466
2012-05-01 14:64:45.119
2012-05-01 14:23:55.113

我试着用熊猫。到_datetime(df['date time']),但我得到了错误未知字符串值。我还尝试将字符串拆分为两列,只转换日期部分,但遇到了类似的错误

共有1个答案

白成济
2023-03-14

可能重复此操作:将Pandas列转换为DateTime。它是旧的,并且被接受的答案指定了在大多数情况下不需要的格式。

然而,看看这个:

import pandas as pd

data = dict(dates=['01-May-2012  16:44:55.113',
                   '01-Jun-2012  18:49:57.466',
                   '01-May-2012  14:64:45.119',  # <--- Error, minute can't be more than 60
                   '01-May-2012  14:23:55.113'])

df = pd.DataFrame(data)
df.dates = pd.to_datetime(df.dates, errors='coerce')

print(df)

你会得到这个(感谢@3novak建议错误='胁迫'):

                    dates
0 2012-05-01 16:44:55.113
1 2012-06-01 18:49:57.466
2                     NaT
3 2012-05-01 14:23:55.113
 类似资料:
  • 问题内容: 当我在下面的代码下运行时,出现Unparseable错误。如何将dd MMM yyyy格式转换为dd / MM / yyyy格式? 问题答案: 假设您修复了明显的语法错误,则: 您要做的就是为您需要解析的格式创建一个解析器,并为您想要的格式创建一个格式化器:

  • 问题内容: 我正在尝试使用以下方式将dd-mm-yyyy格式的字符串转换为JavaScript中的日期对象: 包含格式为dd-mm-yyyy的日期。当我执行以下操作时,我得到“无效日期”: 这是因为符号“-”吗?我该如何克服? 问题答案: 分割为“-” 将字符串解析为所需的部分: 使用正则表达式 为什么不使用正则表达式? 因为您知道将要使用由连字符分隔的三部分组成的字符串。 但是,如果您要在另一个

  • 我的日期是2013年12月11日星期三东部标准时间00:00:00这种格式。我想用JavaScript将此日期转换为格式。如何在不改变时区的情况下进行转换。 我搜索了这个解决方案,发现下面的解决方案: 但我认为这不是一个好的解决方案,因为如果我的日期字符串时区从EST更改为IST或任何其他时区,它将不起作用。 是否有将日期转换为所需格式的好解决方案? 提前感谢。 编辑:如果有任何一个使用JQuer

  • 问题内容: 我在网络上阅读了更多问题,但还没有找到解决方案。 我有一个完全像这种格式的 字符串, 例如“ 14/05/1994”。 我需要以 相同的格式* 将其隐藏到 java.util.Date 中。 * 我试过了: 但结果是:1994年5月14日星期六星期六00:00:00 结果是:1994年5月14日不是字符串,而是java.util.Date? 问题答案: 一个不 具有 的格式。这只是个约

  • 问题内容: 我有多个具有生日的联系人,并且所有联系人都已与移动设备同步。现在的问题是所有联系人的生日格式都不同,我想以“ dd-MM- yyyy”之类的特定格式显示所有生日日期。 因此,例如,一个同步联系人的生日为“ 1990-02-07”或“ 1988-06-15T22:00:00.000Z”或“ 12-02-1990”等,则应显示所有这些日期以特定格式“ dd-MM-yyyy”。 那我该如何解

  • 我有多个联系人的出生日期,并且都与移动设备同步。现在的问题是所有联系人都有不同的生日格式,我想以特定格式显示所有生日日期,例如“dd-MM-yyyy”。 例如,一个同步联系人的生日是“1990-02-07”或“1988-06-15T22:00:00.000Z”或“12-02-1990”等...那么所有这些日期都应该以特定的格式“dd-MM-yyyy”显示。 那么我该如何解决这个问题呢? 如有任何建