示例:10011933 ~ 1933-10-01
这是我在Pandas DataFrame中的数据:
日期
10011933
04041961
07061931
10281988
My attempt to solve:
df['date'] = pd.to_datetime(df['date'],format='%Y%m%d')
错误信息-我得到以下错误:
ValueError:未转换数据:57
如何更正以删除错误?谢谢。
首先将字符串列解析为日期时间
df['datetime'] = pd.to_datetime(df['date'],format='%d%m%Y')
然后将日期时间格式化为所需格式的字符串
df['date_formatted'] = df['datetime'].dt.strftime('%Y%m%d')
或者你也可以在一行中完成
下面是一个可行的解决方案:
df['date_new'] = pd.to_datetime(df['date'],format='%m%d%Y').dt.strftime('%Y-%m-%d')
其中df['date_new']给出所需的输出
0 1933-10-01
1 1961-04-04
2 1931-07-06
3 1988-10-28