You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

pandas中datetime64[ns]列与float64秒数列相加报错如何解决

报错原因

  • 第一次报错是因为datetime64[ns]为时间戳类型,无法直接和浮点型数值执行加法运算,两类数据运算逻辑不匹配。
  • 第二次报错是因为你将浮点型的秒数直接转为了时间戳类型(Timestamp),两个独立的时间点仅支持减法运算得到时间差,逻辑上不存在相加的合理性,因此触发报错。

正确实现方案

你需要将存储秒数的浮点列转换为时间间隔类型(Timedelta),指定单位为秒后,再和时间列执行加法操作即可:

import pandas as pd

# 方法1:生成新列存储计算后的时间
df['new_time'] = df['time'] + pd.to_timedelta(df['float'], unit='s')

# 方法2:直接覆盖原时间列
df['time'] += pd.to_timedelta(df['float'], unit='s')

效果验证

以你提供的第一行数据为例,原时间2020-07-28 14:53:10加5秒后得到2020-07-28 14:53:15,符合预期计算结果。

内容的提问来源于stack exchange,提问作者alelew

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 00:39:01