我试图使用以下方法将字符串转换为日期类型:
df.apply(pd.to_datetime)
抛出:('月份必须在 1..12','发生在索引'my_column')
添加 errors='coerce' 修复问题
df.apply(pd.to_datetime, errors='coerce')
但是有什么方法可以检查和显示无效值吗?
您可以只创建一个新列,然后使用布尔索引:
# sample data
df = pd.DataFrame({'str':['2019-01-01', '2019-02-01', '2019-13-01']})
# adding a new column that is datetime
df['date'] = pd.to_datetime(df['str'], errors='coerce')
# boolean indexing
df[df['date'].isna()]
str date
2 2019-13-01 NaT