Converting to datetime - ParserError: Unknown string format: 2022-02-17 7
Converting to datetime - ParserError: Unknown string format: 2022-02-17 7
我有一个 pandas 数据框,其中包含一些字符串值,如果小时小于 10,则这些字符串值具有一位数格式的日期小时,如下所示:
2022-02-17 7
我现在想将此字符串转换为日期时间格式,但是在应用时
df['datetime'] = pd.to_datetime(df['datetime'], infer_datetime_format=True)
我得到一个 ParserError:
ParserError: Unknown string format: 2022-02-17 7
我该如何解决这个问题?
使用:
df = pd.DataFrame({'datetime':['2022-02-17 7']})
df['datetime'] = df['datetime'].str.replace(' (\d{1})', ' 0\1')
df['datetime'] = pd.to_datetime(df['datetime'], format='%Y-%m-%d %H')
结果:
一个更一般的情况也可以处理 two-digits:
df = pd.DataFrame({'datetime':['2022-02-17 17', '2022-02-17 7']})
df['datetime'] = df['datetime'].str.replace('\s(\d)$', ' 0\1')
结果:
我有一个 pandas 数据框,其中包含一些字符串值,如果小时小于 10,则这些字符串值具有一位数格式的日期小时,如下所示:
2022-02-17 7
我现在想将此字符串转换为日期时间格式,但是在应用时
df['datetime'] = pd.to_datetime(df['datetime'], infer_datetime_format=True)
我得到一个 ParserError:
ParserError: Unknown string format: 2022-02-17 7
我该如何解决这个问题?
使用:
df = pd.DataFrame({'datetime':['2022-02-17 7']})
df['datetime'] = df['datetime'].str.replace(' (\d{1})', ' 0\1')
df['datetime'] = pd.to_datetime(df['datetime'], format='%Y-%m-%d %H')
结果:
一个更一般的情况也可以处理 two-digits:
df = pd.DataFrame({'datetime':['2022-02-17 17', '2022-02-17 7']})
df['datetime'] = df['datetime'].str.replace('\s(\d)$', ' 0\1')
结果: