问题描述
我有一个带有 id 和 date 列的数据框,日期是一个字符串:
df = pd.DataFrame([[0,'2020-03-26T15:37:19.765000Z'],[1,'2019-03-25T15:37:18Z'],[2,'2020-03-26T15:37:19.765000Z']],columns = ['id','date'])
我必须将日期转换为 DateTime 以便进一步工作。我只能找到一种解决方案,使用 for 循环。
for i in range(len(df)):
if (len(df.loc[i,'date']) != 27):
df.loc[i,'date'] = df.date[i].replace('Z','.000000Z')
for i in range(len(df)):
df.loc[i,'date'] = datetime.strptime(str(df.date[i]),'%Y-%m-%dT%H:%M:%s.%fZ')
它按我的需要工作,但如果 df 很大,它会慢得令人无法接受。 有什么建议吗?
解决方法
当您使用 pandas
时,您可以使用 to_datetime()
方法轻松完成此操作:-
df['date']=pandas.to_datetime(df['date'])