gpt4 book ai didi

python - 将数据框列中的日期转换为 MM/DD/YYYY

转载 作者:行者123 更新时间:2023-12-01 04:00:50 25 4
gpt4 key购买 nike

我有 4 个名为 df1df2df3df4 的数据帧,其中有一列 Date 。该列由不同格式的日期组成。 df1 具有 int64 类型的日期列,df2 具有对象类型的日期列,df3 具有对象类型的日期列,df4 具有对象类型的日期列。下面是数据框及其数据。

df1:
Date
0 20160301
1 20160301
2 20160301
3 20160301

df2:
Date
0 01/03/2016
1 01/03/2016
2 01/03/2016

df3:
Date
0 31-Mar-16
1 31-Mar-16
2 31-Mar-16

df4:
Date
0 25/02/2016
1 25/02/2016
2 25/02/2016

我想将这些日期转换为 date 类型的 mm/dd/yyyy 格式。谁可以帮我这个事?

最佳答案

我认为你可以使用to_datetimedt.strftime ,但 type 不是 datetime,而是 string:

df1['Date'] = pd.to_datetime(df1['Date'], format='%Y%m%d').dt.strftime('%m/%d/%Y')
df2['Date'] = pd.to_datetime(df2['Date']).dt.strftime('%m/%d/%Y')
df3['Date'] = pd.to_datetime(df3['Date']).dt.strftime('%m/%d/%Y')
df4['Date'] = pd.to_datetime(df4['Date']).dt.strftime('%m/%d/%Y')

print df1
print df2
print df3
print df4
Date
0 03/01/2016
1 03/01/2016
2 03/01/2016
3 03/01/2016
Date
0 01/03/2016
1 01/03/2016
2 01/03/2016
Date
0 03/31/2016
1 03/31/2016
2 03/31/2016
Date
0 02/25/2016
1 02/25/2016
2 02/25/2016

print type(df1.at[0,'Date'])
<type 'str'>

如果您想要日期时间,格式为YY-MM-DD:

df1['Date'] = pd.to_datetime(df1['Date'], format='%Y%m%d')
df2['Date'] = pd.to_datetime(df2['Date'])
df3['Date'] = pd.to_datetime(df3['Date'])
df4['Date'] = pd.to_datetime(df4['Date'])

print df1
print df2
print df3
print df4
Date
0 2016-03-01
1 2016-03-01
2 2016-03-01
3 2016-03-01
Date
0 2016-01-03
1 2016-01-03
2 2016-01-03
Date
0 2016-03-31
1 2016-03-31
2 2016-03-31
Date
0 2016-02-25
1 2016-02-25
2 2016-02-25

print type(df1.at[0,'Date'])
<class 'pandas.tslib.Timestamp'>

有关格式化日期时间的更多信息是here .

关于python - 将数据框列中的日期转换为 MM/DD/YYYY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36589020/

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