pandas - 类型错误 : <class 'datetime.time' > is not convertible to datetime

标签 pandas date

问题有点简单。我的目标是计算两个日期之间的天数差异,比如 A 和 B。
这些是我的尝试:

df['daydiff'] = df['A']-df['B']

df['daydiff'] = ((df['A']) - (df['B'])).dt.days

df['daydiff'] = (pd.to_datetime(df['A'])-pd.to_datetime(df['B'])).dt.days

这些以前对我有用,但由于某种原因,这次我不断收到此错误:

TypeError: class 'datetime.time' is not convertible to datetime



当我将 df 导出到 excel 并且日期工作正常时。任何想法?

最佳答案

使用 pd.Timestamp 处理格式化时间中的尴尬差异。

df['A'] = df['A'].apply(pd.Timestamp)  # will handle parsing
df['B'] = df['B'].apply(pd.Timestamp)  # will handle parsing
df['day_diff'] = (df['A'] - df['B']).dt.days

当然,如果您不想在输出的 DataFrame 中更改 df['A'] 和 df['B'] 的格式,您可以在单行中执行此操作。
df['day_diff'] = (df['A'].apply(pd.Timestamp) - df['B'].apply(pd.Timestamp)).dt.days

这将为您提供整数之间的天数。

关于pandas - 类型错误 : <class 'datetime.time' > is not convertible to datetime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49389358/

相关文章:

python - 将 DataFrame 的列转换为字典键

javascript - 将日期值转换为时间戳 - 发布请求 - Ember.js

php - 如何在 PHP/mysql 中插入 future 的日期时间?

python - 条件 Group By 语句

python - 如何检查pandas中另一个数据框中是否存在值?

python - Pandas Python - 类型错误 : bad operand type for unary ~: 'float'

drupal - 如何添加自定义 Drupal 日期格式?

python - 在 Python 中从 Excel 数据透视表中获取原始数据

Java 将 unix 时间转换为日期在每台计算机上不同,为什么?

cov.wt(z) : 'x' must contain finite values only 中的 R 编程错误