python - 如何将具有空值的列转换为日期时间格式?

标签 python pandas datetime type-conversion

如何将 df 转换为 pandas datetime 数据类型? (空值)

datet = pd.DataFrame(['2018-09-07 00:00:00','2017-09-15 00:00:00',''],columns=['Mycol'])

datet['Mycol'] = datet['Mycol'].apply(lambda x: 
                                dt.datetime.strptime(x,'%Y-%m-%d %H:%M:%S'))

但它返回错误: ValueError: 时间数据“”与格式“%Y-%m-%d %H:%M:%S”不匹配

我该如何解决该错误? (将 null 保留为空白)

谢谢!

最佳答案

只是做:

datet['Mycol'] = pd.to_datetime(datet['Mycol'], errors='coerce')

这会自动将 null 转换为 NaT 值。

输出:

0   2018-09-07
1   2017-09-15
2          NaT

关于python - 如何将具有空值的列转换为日期时间格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52822548/

相关文章:

Python Pandas 只比较相同标签的 DataFrame 对象

python - 压平 json 以获取 Pandas 中的多列

python - 我有两个数据框。我想根据条件用另一个数据帧的 header 值替换一个数据帧的值

PHP 将 ISO 日期转换为更易读的格式?

c# - 将 DateTimeOffset 转换为 DateTime 并为此 DateTime 添加偏移量

python - 如何正确绘制具有偏移坐标的六边形?

python - 具有二进制可执行文件的 Hadoop/Elastic Map Reduce?

python - 如何在 python 中计算一周的第一天和最后一天

python - Python 中的网页抓取问题 : returning empty values

python - 在特定版本的 OpenCV 中使用 python