在数据挖掘项目中,有时候个体的出生日期包含信息量过大,不适合作为一个有效数据进入模型算法训练,因此有必要把出生日期转化为年龄age,age是一个很好的特征工程指示变量。
import pandas as pd
import numpy as np
from pandas import Series, DataFrame
import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline data = {'birth':['10/8/00', '7/21/93', '6/14/01', '5/18/99', '1/5/98']}
frame = DataFrame(data)
1.首先将birth转化为标准时间格式
frame['birth'] = pd.to_datetime(frame['birth'])
2.获取当前时间的年份,并且减去birth的年份
import datetime as dt
now_year = dt.datetime.today().year
frame['age'] = now_year - frame.birth.dt.year
使用dt.datetime.today().year获取当前日期的年份,利用frame.birth.dt.year将生日中的年份提取出来即可。
END 2018-11-05 10:10:08