使用 pandas python 将字符串日期转换为列中所有值的数字

Posted

技术标签:

【中文标题】使用 pandas python 将字符串日期转换为列中所有值的数字【英文标题】:convert string date to numeric for all values in column using pandas python 【发布时间】:2017-06-20 03:28:46 【问题描述】:

对于 ColumnA 中的所有值,我需要将“Jan 11, 2017 9:00 PM”转换为 2017-01-11 21:00:00。

有没有一种简单的方法/函数可以在 python 中使用 pandas 做到这一点?

【问题讨论】:

to_datetime 似乎处理得很好:In [6]: pd.to_datetime('Jan 11, 2017 9:00 PM') Out[6]: Timestamp('2017-01-11 21:00:00') 【参考方案1】:

to_datetime 似乎处理得很好:

In [6]:
pd.to_datetime('Jan 11, 2017 9:00 PM')

Out[6]:
Timestamp('2017-01-11 21:00:00')

所以你可以使用这个函数的输出覆盖你的列:

df['ColumnA'] = pd.to_datetime(df['ColumnA'])

这里只是为了澄清日期和月份是正确的:

In [8]:
pd.to_datetime('Jan 11, 2017 9:00 PM').day

Out[8]:
11

In [9]:
pd.to_datetime('Jan 11, 2017 9:00 PM').month

Out[9]:
1

【讨论】:

以上是关于使用 pandas python 将字符串日期转换为列中所有值的数字的主要内容,如果未能解决你的问题,请参考以下文章

将 JSON 时间戳字符串转换为 pandas 数据框中的 python 日期

python 将字符串格式的日期(DD.MM.YYYY)转换为Pandas中的日期格式

如何将字符串转换为日期 pandas python TypeError:strptime() 不接受关键字参数

Python/pandas 导出到 excel 转换日期时间 (HH:mm)

如何在 pandas python 中将字符串转换为日期时间格式?

使用 Pandas 将数据框中的 Python 对象列转换为没有日期的时间