1. 程式人生 > >已知生日,求年齡,pandas實現

已知生日,求年齡,pandas實現

今天在群裡遇到個問題,已經知道生日怎麼計算出年齡,注意有個知識點  pandas.Series.dt  可以將serices資料型別與datetime型別進行計算。感謝原文作者https://blog.csdn.net/zhangjy3738/article/details/82179689。

import pandas as pd
import datetime
dict = {'生日':["1993-01-01","2018-09-01","2018-10-10"],
        '姓名':["張三","李四","王五"]}
data = pd.DataFrame(dict)  # 由字典轉換成dataframe
data["生日"] = pd.to_datetime(data["生日"])  # 轉換成時間格式
print(type(data["生日"]))  # 型別仍然是 series

today = datetime. datetime.today().year  # 這是今年的時間
print(type(today))  # 型別是int

data["年齡"] = today - data["生日"].dt.year   # 這裡這裡的  dt  是一個方法,不要出錯哦
print(data)


輸出結果:
<class 'pandas.core.series.Series'>
<class 'int'>
   姓名         生日  年齡
0  張三 1993-01-01  25
1  李四 2018-09-01   0
2  王五 2018-10-10   0