我有一个熊猫数据框,如下所示:
import pandas as pd
df = pd.DataFrame({'col1':['abc', 'abc', 'xyz', 'xyz', 'cd'], 'col2':['2020-02-01 12:04:59', '2020.09.29.12.04.59', '2020.09.28.16.32.21', '2020-02-01 16:04:59', '2020-05-01 11:04:59']})
df
col1 col2
0 abc 2020-02-01 12:04:59
1 abc 2020.09.29.12.04.59
2 xyz 2020.09.28.16.32.21
3 xyz 2020-02-01 16:04:59
4 cd 2020-05-01 11:04:59
col2 值不一致(格式不同),这就是我无法将其转换为日期时间格式的原因。
我使用 df['col2'] = pd.to_datetime(df['col2'])
代码将该列转换为日期时间但 getting ParserError: Unknown string format: 2020.09.29.12.04.59
错误。
答案 0 :(得分:0)
您可以删除所有非数字字符:
df['col2'] = pd.to_datetime(df['col2'].str.replace('\D',''))
输出:
col1 col2
0 abc 2020-02-01 12:04:59
1 abc 2020-09-29 12:04:59
2 xyz 2020-09-28 16:32:21
3 xyz 2020-02-01 16:04:59
4 cd 2020-05-01 11:04:59