首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Pandas中查找不适合日期时间格式的行

问在Pandas中查找不适合日期时间格式的行
EN

Stack Overflow用户
提问于 2020-11-13 21:16:14
回答 1查看 167关注 0票数 1

如果这个问题已经被问过了,很抱歉。我想会的,但我一直没能找到答案。我想要将pandas dataframe中的列转换为日期时间格式。

代码语言:javascript
复制
import pandas as pd 
df['DateOfBirth'] = pd.to_datetime(df['DateOfBirth'], format='%Y-%m-%d')

显然,有些行还包含其他字符

代码语言:javascript
复制
ValueError: time data 0000-00-00 doesn't match format specified

现在df非常大,所以对所有唯一值的视觉检查都不起作用(我也想了解一下如何在不查看所有值的情况下进行检查)。我想找出所有不符合指定格式的唯一值,这样我就可以清理它们。有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-13 21:17:57

将to_datetime与errors='coerce'一起使用,因此错误的格式会生成缺失值,然后过滤原始值并通过DataFrame.loc和Series.unique转换为唯一列表

代码语言:javascript
复制
m = pd.to_datetime(df['DateOfBirth'], format='%Y-%m-%d', errors='coerce').isna()

print (df.loc[m, 'DateOfBirth'].unique().tolist())
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64821604

复制
相关文章

相似问题

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