如何将Pandas中特定格式的字符串列转换为datetime类型
Pandas字符串列转datetime实现方法
你可以直接用Pandas内置的pd.to_datetime()方法完成转换,针对你给出的场景,有两种常用写法:
写法1:自动识别格式(兼容性好)
Pandas可以自动识别2011-06-12T01:17:56这类标准ISO时间格式,无需额外指定格式参数:
df['date'] = pd.to_datetime(df['date'])
写法2:指定格式(转换效率更高,适合大表)
如果数据量较大,手动指定格式可以避免自动识别的性能消耗,同时降低格式识别误差:
df['date'] = pd.to_datetime(df['date'], format='%Y-%m-%dT%H:%M:%S')
常用可选参数说明
errors:指定转换失败时的处理逻辑,可选值:errors='raise':默认值,转换失败直接抛出错误errors='coerce':转换失败的内容设为NaT空时间值errors='ignore':转换失败保留原字符串内容
utc:设为True时会自动把转换后的时间标记为UTC时区,需要处理时区场景时使用
验证转换结果
转换完成后可以用以下代码确认列类型是否符合预期:
print(df['date'].dtype) # 输出为 datetime64[ns] 即表示转换成功
内容的提问来源于stack exchange,提问作者Buzi
相关产品推荐
相关产品推荐

