我在Python Pandas中有如下数据框架:
col1
------
20002211
19980515
- 前四个值为year
- 后面两个值是month
- 后面两个值是day
我需要将值替换为19000102中的"col1"如果有关月份的值不在1- 12的范围内,因为我们有12个月:)
然后我需要将这个字符串转换为日期,因此我需要如下所示:
col1
--------
1900-01-02
1998-05-15
因为在第一行中是:20002211,月份值是22,而我们的日历中只有12个月。第二行正确
使用pd.to_dateime
,errors='coerce'
作为参数
如果' coerce ',则无效解析将被设置为NaT。
>>> pd.to_datetime(df['col'], format='%Y%m%d', errors='coerce')
.fillna('1900-01-02')
0 1900-01-02
1 1998-05-15
Name: col, dtype: datetime64[ns]