[英]Python: How to calculate Difference btw Current Year and Year from Column?
我有一列“ DateBecameRep_Year”,其中僅包含年份值(即1974、1999等)。 我想在數據框中創建一個新列,以計算當前年份與“ DateBecameRep_Year”字段中年份之間的差額。
以下是我嘗試使用的代碼:
df_DD['DateBecameRep_Year'] = pd.to_datetime(df_DD['DateBecameRep_Year'])
df_DD['Current Year'] = datetime.now().year
df_DD['Current Year'] = pd.to_datetime(df_DD['Current Year'])
df_DD['Years_Since_BecameRep'] = df_DD['Current Year'] - df_DD['DateBecameRep_Year']
df_DD['Years_Since_BecameRep'] = df_DD['Years_Since_BecameRep'] / np.timedelta64(1, 'Y')
df_DD['Years_Since_BecameRep'].head()
這是我得到的輸出,看起來很奇怪:
我的假設是,這與以下內容有關:
任何幫助是極大的贊賞!
如果只想獲取不同的年份,則可以簡單地使用減法,而無需轉換為日期時間。
import pandas as pd
import datetime
current_year = datetime.datetime.now().year #get current year
df_DD = pd.DataFrame.from_dict({"DateBecameRep_Year":[1999,2000,2015,1898,1788,1854]})
df_DD['Current Year'] = datetime.datetime.now().year
df_DD["Years_Since_BecameRep"] = df_DD['Current Year'] - df_DD['DateBecameRep_Year'] # substract to get the year delta
df_DD
將為:
DateBecameRep_Year Current Year Years_Since_BecameRep
0 1999 2017 18
1 2000 2017 17
2 2015 2017 2
3 1898 2017 119
4 1788 2017 229
5 1854 2017 163
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.