如果数据类型如下所示,如何将列中字段的数据类型更改为日期类型:
<class 'datetime.datetime'> 296
<class 'str'> 116
<class 'float'> 8
我的目标是忽略空行,复制具有多个日期的行并将它们拆分,然后将datetime值转换为日期。
列的一小部分,用于说明数据的外观(第二行的"事件日期"列为空):
| 第1列|事件日期|
| - ------|- ------|
| 1个|2020年7月16日00时00分|
| 第二章||
| 三个|2022年3月31日、2018年11月26日、2028年1月31日|
我尝试了很多方法来实现这个功能,但都没有成功。我尝试过循环遍历行来转换每一行,但循环不是最佳选择。我尝试过拆分和分解包含多个日期的单元格,如下所示,但出现以下错误(使用dateutil.parser._parser.ParserError:未知字符串格式:2022年3月31日、2018年11月26日、2028年1月31日出现在位置3)。
df=auto_test_file.assign(dates=auto_test_file['Event Date'].str.split(',')).explode('dates')
pd.to_datetime(df['Event Date'])
2条答案
按热度按时间s4n0splo1#
你会爆炸
然后转换为日期时间
uxhixvfz2#