ValueError: time data ‘nan‘ does not match format ‘%Y-%m-%d %H:%M:%S‘

584 阅读2分钟

在尝试把dataframe的一列数据类型由字符串类型转为日期类型时,出现以下报错信息:

“ValueError: time data ‘nan’ does not match format ‘%Y-%m-%d %H:%M:%S’”

1. 尝试了以下动作,无果
data['结清时间'].apply(lambda x :datetime.datetime.strptime(str(x),'%Y-%m-%d %H:%M:%S') if x != np.NaN)
2. 参考了以下操作,很棒

封装一个函数,在进行字符串转日期操作时,如果遇到NaN则返回操作异常。

import datetime

def func(x):
    try:
        return datetime.datetime.strptime(str(x),'%Y-%m-%d %H:%M:%S')
    except:
        return np.NaN
    
data['结清时间'].apply(lambda x: func(x))

搞定

👏👏👏再看看我们以前的文章😃😃😃
🌺 Excel中数据分析工具库-相关系数篇
🌺 干货,手把手教会你做相关性分析
🌺 5年数据分析路,小结。
🌺 用户细分及画像分析
🌺 K-近邻算法及实践

欢迎关注,微信公众号“数据分析师之家
扫描二维码 关注我们
💁提供职业规划、简历指导、面试辅导服务哦
QQ交流群:254674155
在这里插入图片描述