首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >正确解析ddmmyyyy:HH:MM:SS.xxx格式的str日期时间

正确解析ddmmyyyy:HH:MM:SS.xxx格式的str日期时间
EN

Stack Overflow用户
提问于 2022-02-24 19:57:09
回答 1查看 272关注 0票数 0

在dataframe中,以下日期时间值保存为字符串日期:

代码语言:javascript
运行
复制
ddf = dd.DataFrame({'date': ['15JAN1955:13:15:27.369', NaN,'25DEC1990:23:18:17.200', '06MAY1962:02:55:27.360', NaN, '20SEP1975:12:02:26.357']}

我使用了ddf['date'].apply(lambda x: datetime.strptime(x,"%d%b%Y:%H:%M:%S.%f"), meta=datetime),但是我得到了一个TypeError: strptime() argument 1 must be a str, not float错误。

我遵循从这本书中分析日期的方式:用python和dask的数据科学。

.%f是否期待一个浮点数?或者它可能与NaN值有关?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-24 20:03:16

您可以使用%fparses any decimal fraction of seconds with up to 6 digits

同样,20SEPT1975应该是20SEP1975 (月中没有T )

代码语言:javascript
运行
复制
import pandas as pd
import numpy as np

df = pd.DataFrame({'date': ['15JAN1955:13:15:27.369', np.nan,
                            '25DEC1990:23:18:17.200', np.nan,
                            '06MAY1962:02:55:27.360', '20SEP1975:12:02:26.357']})

df['date'] = pd.to_datetime(df['date'], format="%d%b%Y:%H:%M:%S.%f")
print(df)
代码语言:javascript
运行
复制
                     date
0 1955-01-15 13:15:27.369
1                     NaT
2 1990-12-25 23:18:17.200
3                     NaT
4 1962-05-06 02:55:27.360
5 1975-09-20 12:02:26.357
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71257558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档