【发布时间】:2015-09-06 03:33:38
【问题描述】:
在 Pandas 中,为什么 TimedeltaProperties 对象没有“年”属性?
毕竟datetime 对象有这个属性。
对于一个与时间有关的对象来说,拥有似乎是一件很自然的事情。特别是如果它已经具有小时、秒等属性。
是否有一种解决方法,以便我的专栏充满像10060 days,
可以换算成年吗?或者更好,只是转换为整数表示多年?
【问题讨论】:
-
因为一年的天数并不是一个准确的数值。
-
datetime没有years属性。它有一个year属性,因为说一个特定的日期时间是在 2009 年很简单,而且大多是明确定义的。要说一个特定的持续时间是多少年并不那么简单。一年是365天吗? 366?我们是否应该跟踪 timedelta 何时开始和结束以做出决定? -
即使
f["age_diff"] = f["date2"] - f["date1"],Pandas 也不够聪明,无法计算出这是多少年(浮点数)? -
还要注意
TimedeltaProperties没有这样的属性的原因是因为pd.Timedelta或datetime.timedelta对象(第一个是第二个的子类)没有这样的属性。这确实是出于上述原因。