pandas中将时间戳转化为字符串时遇到空值无法处理?

在用pandas处理数据时,从数据库中读取某一列为时间戳。
用timestamp.strftime('%Y-%m-%d')将其转化为字符串格式的日期。
但遇到空值会报错,请问该如何高效的实现时间戳转化为字符串,同时对空值进行适当处理。
空值的元素为NaTType
源代码如下:

my_fetchall['出厂日期'] = my_fetchall['出厂日期'].map(lambda x: x.strftime('%Y-%m-%d'))
阅读 2.4k
1 个回答
import pandas as pd
import numpy as np

# 示例数据
data = {
    '出厂日期': [pd.Timestamp('2021-01-01'), pd.NaT, pd.Timestamp('2021-01-03')]
}

df = pd.DataFrame(data)

# 用 lambda 函数,当遇到 NaT 时返回 None
df['出厂日期'] = df['出厂日期'].map(lambda x: x.strftime('%Y-%m-%d') if pd.notna(x) else None)

print(df)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题