我有一个数据框列,其中包含1980-12-11T00:00:00
格式的日期时间数据。
我需要将整列转换为DD/MM/YYY
字符串格式。
有没有简单的代码?
答案 0 :(得分:1)
创建一个有效的示例:
df = pd.DataFrame({'date':['1980-12-11T00:00:00', '1990-12-11T00:00:00', '2000-12-11T00:00:00']})
print(df)
date
0 1980-12-11T00:00:00
1 1990-12-11T00:00:00
2 2000-12-11T00:00:00
通过pd.to_datetime()
将列转换为datetime
并调用strftime()
df['date_new']=pd.to_datetime(df.date).dt.strftime('%d/%m/%Y')
print(df)
date date_new
0 1980-12-11T00:00:00 11/12/1980
1 1990-12-11T00:00:00 11/12/1990
2 2000-12-11T00:00:00 11/12/2000
答案 1 :(得分:0)
使用pandas
时,请尝试pandas.to_datetime
:
import pandas as pd
df = pd.DataFrame({'date': ['1980-12-%sT00:00:00'%i for i in range(10,20)]})
df.date = pd.to_datetime(df.date).dt.strftime("%d/%m/%Y")
print(df)
date
0 10/12/1980
1 11/12/1980
2 12/12/1980
3 13/12/1980
4 14/12/1980
5 15/12/1980
6 16/12/1980
7 17/12/1980
8 18/12/1980
9 19/12/1980
答案 2 :(得分:0)
您可以使用pd.to_datetime
将字符串转换为日期时间数据
pd.to_datetime(df['col'])
您还可以将特定格式传递为:
pd.to_datetime(df['col']).dt.strftime('%d/%m/%Y')