2015-06-20 30 views
1

在Pandas中,爲什麼TimedeltaProperties對象沒有屬性「年」?AttributeError:'TimedeltaProperties'對象在Pandas中沒有屬性'years'

畢竟,datetime對象具有此屬性。

對於時間有關的物體來說,這似乎是很自然的事情。特別是如果它已經有小時,秒等屬性。

有一種解決方法,使我的專欄,這是完全一樣
10060 days
可以轉換爲年值?或者更好的是,只是轉換爲整數表示多年?

+2

Becaluse一年中的天數不是確切的值。 – HYRY

+0

'datetime'沒有'年份'屬性。它具有「年份」屬性,因爲它很簡單,並且大多定義爲說特定的日期時間是在2009年。說一個特定的持續時間有多長的時間並不那麼簡單,是一年365天? 366?我們是否應該跟蹤timedelta何時開始和結束以作出決定? – user2357112

+0

即使在'f [「age_diff」] = f [「date2」] - f [「date1」]',Pandas還不夠聰明以找出這是多少年(浮點)? –

回答

1

TimedeltaProperties因爲根據TimedeltaProperties source code沒有yearmonth屬性。這是 -

Accessor object for datetimelike properties of the Series values.

但是,monthsyears沒有常量定義。

1 month可以採取不同的不同天數的基礎上,month本身,在1月 - > 31天,四月 - > 30天,等

1 month可以根據一年取不同值如果年份是2004年,2月有29天,如果是2003年2月有28天等。

years的情況相同,它可以採用不同的值例如,如果年份是2003年,則有365天,如果是2004年,則有366天。

因此,一個要求 - 轉換10060 daysyears是不準確的,其中years

就像之前所說的那樣,準確的年數那些沒有。的天數相應取決於那些天代表的實際年份。