在Python Pandas中将UTC格式列转datetime类型遇错求助
问题原因与解决方法
问题所在
你的日期字符串是"15-Feb-2024 UTC",但指定的格式%d-%b-%Y只对应日-月缩写-年的部分,完全没匹配末尾的 UTC后缀,这就是报错的核心原因。
三种可行解决方案
方案1:让Pandas自动解析(最简单)
直接去掉format参数,Pandas能自动识别带UTC后缀的日期格式:df["Order Date"] = pd.to_datetime(df["Order Date"], utc=True)方案2:精准匹配完整格式
如果需要指定格式来提升解析速度,把UTC也加入格式字符串:df["Order Date"] = pd.to_datetime(df["Order Date"], utc=True, format='%d-%b-%Y UTC')方案3:先清理字符串再解析
若存在部分行带UTC、部分不带的情况,先统一清理掉后缀再转格式:df["Order Date"] = pd.to_datetime(df["Order Date"].str.replace(' UTC', ''), utc=True, format='%d-%b-%Y')
内容的提问来源于stack exchange,提问作者SMS
相关产品推荐
相关产品推荐

