strptime()参数1必须为str,而不是序列时间序列转换 [英] strptime() argument 1 must be str, not Series time series convert

查看:1858
本文介绍了strptime()参数1必须为str,而不是序列时间序列转换的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用datetime从json读取时间, 单一时间的代码效果很好,

I use datetime to read time from json, the code for single time works well,

 import datetime
 data=datetime.datetime.strptime('Apr 12, 2018', '%b %d, Y').strftime('%m/%d/%Y')

但是,当我尝试将其应用于数据框时,出现了错误.

However, when I try to apply it into data frame, I have error.

 df_newtime=datetime.datetime.strptime(old_df['oldDate'],'%b %d, %Y').strftime('%m/%d/%Y')

错误是TypeError: strptime() argument 1 must be str, not Series

推荐答案

您可以通过两种方式进行操作:

You can do it in two ways:

方法1:

在这里,我们使用map

list(map(lambda x: datetime.datetime.strptime(x,'%b %d, %Y').strftime('%m/%d/%Y'), old_df['oldDate']))

方法2:

我们在这里通过一系列

pd.to_datetime(old_df['oldDate'], format='%b %d, %Y')

这篇关于strptime()参数1必须为str,而不是序列时间序列转换的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆