我有一个列中包含无效日期数据的数据集。它的格式为yyyymmdd
,我需要将它们重新格式化为mm/dd/yyyy
。我尝试强制该值,但它不满足条件,因为它是数据,即使无效也需要打印出来。
下面是csv格式的数据示例
数据的日期为“00”,我们都知道第0天是不存在的,因此在打印 Dataframe 时会产生错误。
我试着把errors='coerce
换成errors='ignore
,只是想看看它是否能通过条件,但它没有。
我想打印/重新格式化无效数据而不强制值。有什么办法吗?
下面是我的代码行:
df['charge_off_date'] = pd.to_datetime(hals2['charge_off_date'], format='%Y%m%d', errors='ignore')
df['charge_off_date'] = df['charge_off_date'].dt.strftime('%m/%d/%Y')
2条答案
按热度按时间vxf3dgd41#
如果它是无效的,你不能将它格式化为日期,你可以将它当作字符串,知道它是
yyyymmdd
,你可以在一个自定义函数中格式化一个字符串,并将它应用到你的列中。这应该将
19000100
转换为1900/01/00
,作为日期仍然无效,但看起来像是日期格式。vxf3dgd42#
示例:
输出: