gpt4 book ai didi

python - 如何使单列中的两个不同日期格式唯一?

转载 作者:行者123 更新时间:2023-12-01 07:58:00 24 4
gpt4 key购买 nike

我有一列,我不明白如何,但一列中有两种不同的格式。

df['Date'] = [6/24/2019,6/14/2019,2019-09-06 00:00:00,6/14/2019,6/14/2019]

我想进一步处理它,所以我想以单一格式制作它。

df['Date'] = [6/24/2019,6/14/2019,9/06/2019,6/14/2019,6/14/2019]

我尝试过这样的事情

data['New_date'] = pd.to_datetime(df['Date'], format = '%m/%d/%Y')

但它给了我这个错误

ValueError:时间数据 6/24/2019 与指定的格式不匹配

最佳答案

使用to_datetime如果不匹配,则使用两种格式和 errors='coerce' for NaT 并用 Series.combine_first 的另一个 Series 替换缺失值或Series.fillna他们,最后通过 Series.dt.strftime 转换为字符串:

s1 = pd.to_datetime(data['Date'], format='%Y-%d-%m %H:%M:%S', errors='coerce')
s2 = pd.to_datetime(data['Date'], format = '%m/%d/%Y', errors='coerce')

#2 possible solutions
data['new'] = s1.fillna(s2).dt.strftime('%m/%d/%Y')
data['new'] = s1.combine_first(s2).dt.strftime('%m/%d/%Y')
print (data)
Date new
0 6/24/2019 06/24/2019
1 6/14/2019 06/14/2019
2 2019-09-06 00:00:00 06/09/2019
3 6/14/2019 06/14/2019
4 6/14/2019 06/14/2019

关于python - 如何使单列中的两个不同日期格式唯一?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55866694/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com