【问题标题】:Subtract datetime to have delta in months [duplicate]减去日期时间以获得以月为单位的增量[重复]
【发布时间】:2021-09-07 11:31:04
【问题描述】:

我有一个包含多个日期的数据框,例如 '2019-05-01' 我想减去它以获得例如4 (2019-09-01 - 2019-05-01)。这是两列。

【问题讨论】:

  • 这些是“字符串”还是日期时间数据类型?
  • 你使用 Pandas 数据框还是 PySpark 数据框?
  • 这些是日期时间数据类型
  • 我使用 Pandas 数据框架

标签: python pandas dataframe datetime


【解决方案1】:
df['delta'] = [ (x.year -  y.year) * 12 + (x.month -  y.month) for x, y in zip(df['date1'],df['date2'])]

【讨论】:

  • 您既不需要列表理解也不需要 zip,请参阅我链接的骗子。
  • 恐怕这个解决方案不起作用 - 它显示错误的数字,例如。一月和二月之间的差异显示 0 而我的解决方案显示 1
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-01-20
  • 1970-01-01
  • 1970-01-01
  • 2018-05-22
  • 1970-01-01
  • 2018-11-15
  • 2014-10-01
相关资源
最近更新 更多