我在同一个文件中有以下格式的日期:
"%m/%d/%Y" --> YEAR with 4 digits
"%m/%d/%y" --> YEAR with 2 digits
我希望能够解析这两种格式。下面是我的尝试:
df[["field1", "field2"]] = pd.to_datetime(
df[["field1", "field2"]], format="%m/%d/%Y", errors="coerce"
).fillna(pd.to_datetime(df[["field1", "field2"]], format="%m/%d/%y"))
但这并不奏效:
ValueError: to assemble mappings requires at least that [year, month, day] be specified: [day,month,year] is missing
如果我只尝试一个系列:
df["field1"] = pd.to_datetime(
df["field1"], format="%m/%d/%Y", errors="coerce"
).fillna(pd.to_datetime(df["field1"], format="%m/%d/%y"))
我得到了ValueError,似乎没有测试这两种格式。
ValueError: unconverted data remains: 21
使用不同日期格式的最有效方法是什么?
1条答案
按热度按时间ohfgkhjo1#
IIUC,只需从www.example.com _datetime中删除format参数pd.to,并让继承格式处理从两位数年份到四位数年份的更改。
输出: