重新格式化csv数据帧的日期值



每一个。

我有一个csv数据集,看起来像这样:

'Date': ['1998-02-01 00:00:00', '02/18/2020 ', '1998-02-01 00:00:00', '03/17/2018']

我想做的是将所有日期列格式化为yyyy/mm/dd。

我试过这个代码:

data['Date'] = data['Date'].str.replace('-','/')
data['Date'] = data['Date'].str.replace(' ','/')
x = data["Date"].str.split("/")
if x.str[0] > "1900"
data['Date'] = data['Date'].str[:10]
else:
mm = data['Date'].str[:2]
yyyy = data['Date'].str[-4:]
dd = data["Date"].str.split("/")
data['Date'] = yyyy+"/"+mm+"/"+dd.str[1]
data['Date']

但我不断地犯错误,最经常出现的是";ValueError:序列的真值不明确。使用a.empty、a.bool((、a.item((、.any((或.all((">

pandas.to_datetime似乎能够解析您的日期时间字符串。

然后,您可以使用dt.strftime来设置日期时间的格式。

import pandas as pd
df = pd.DataFrame({'Date': ['1998-02-01 00:00:00', '02/18/2020 ', '1998-02-01 00:00:00', '03/17/2018']})
parsed = pd.to_datetime(df['Date'])
reformatted = parsed.dt.strftime('%Y/%m/%d')
print(reformatted)

最新更新