在Python dataframe中出生日期转化为年龄的实现方法


Posted in Python onOctober 20, 2018

我们在做数据挖掘项目或大数据竞赛时,如果个体是人的时候,获得的数据中可能有出生日期的Series,举个简单例子,比如这样的一些数:

# -*- coding: utf-8 -*-
import pandas as pd
from pandas import Series, DataFrame
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt %matplotlib inline
data = {'birth': ['10/8/00', '7/21/93', '6/14/01', '5/18/99', '1/5/98']}
frame = DataFrame(data)
frame

在Python dataframe中出生日期转化为年龄的实现方法

从数据来看,'10/8/00'之类的数,最左边的数表示月份,中间的数表示日,最后的数表示年度。

实际上我们在分析时并不需要人的出生日期,而是需要年龄,不同的年龄阶段会有不同的状态,比如收入、健康、居住条件等等,且能够很好地把不同样本的差异性进行大范围的划分,而不是像出生日期那样包含信息量过大且在算法训练时不好作为有效数据进行训练,age是一个很好地特征工程指示变量。

那如何把上述birth数据变为年龄age呢?

在这里用到datetime这个库,如下:

(1)首先把birth转化为标准时间格式

frame['birth'] = pd.to_datetime(frame['birth'])
frame

在Python dataframe中出生日期转化为年龄的实现方法 

(2)获取当前时间的年份,并减去birth的年份

import datetime as dt
now_year =dt.datetime.today().year #当前的年份
frame['age']=now_year-frame.birth.dt.year
frame

在这里使用了dt.datetime.today().year来获取当前日期的年份,然后将birth数据中的年份数据提取出来(frame.birth.dt.year),两者相减就得到需要的年龄数据,如下:

在Python dataframe中出生日期转化为年龄的实现方法

有时候我们可能还会关注到人的出生月份与要预测变量的关系,比如人的星座就是很流行的一种以出生月份、日份来评估其对人的影响,也可以按这种方法去提取月、日数据。

总结

以上所述是小编给大家介绍的在Python dataframe中出生日期转化为年龄的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python生成随机数的方法
Jan 14 Python
基于wxpython开发的简单gui计算器实例
May 30 Python
Python中函数eval和ast.literal_eval的区别详解
Aug 10 Python
TensorFlow实现MLP多层感知机模型
Mar 09 Python
python3实现小球转动抽奖小游戏
Apr 15 Python
python函数与方法的区别总结
Jun 23 Python
django之状态保持-使用redis存储session的例子
Jul 28 Python
利用OpenCV和Python实现查找图片差异
Dec 19 Python
python爬虫开发之selenium模块详细使用方法与实例全解
Mar 09 Python
python实现Oracle查询分组的方法示例
Apr 30 Python
Python读写压缩文件的方法
Jul 30 Python
详解Python遍历列表时删除元素的正确做法
Jan 07 Python
Django中的ajax请求
Oct 19 #Python
Tesserocr库的正确安装方式
Oct 19 #Python
Python中Proxypool库的安装与配置
Oct 19 #Python
在cmder下安装ipython以及环境的搭建
Oct 19 #Python
破解安装Pycharm的方法
Oct 19 #Python
使用Selenium破解新浪微博的四宫格验证码
Oct 19 #Python
Selenium的使用详解
Oct 19 #Python
You might like
别人整理的服务器变量:$_SERVER
2006/10/20 PHP
解决php中Cannot send session cache limiter 的问题的方法
2007/04/27 PHP
在网站上应该用的30个jQuery插件整理
2011/11/03 Javascript
javascript为下拉列表动态添加数据项
2014/05/23 Javascript
网页运行时提示对象不支持abigimage属性或方法
2014/08/10 Javascript
js实现当鼠标移到表格上时显示这一格全部内容的代码
2016/06/12 Javascript
vue封装第三方插件并发布到npm的方法
2017/09/25 Javascript
JavaScript实现短暂提示框功能
2018/04/04 Javascript
详解组件库的webpack构建速度优化
2018/06/18 Javascript
vue 使用v-for进行循环的实例代码详解
2020/02/19 Javascript
ES6新增的数组知识实例小结
2020/05/23 Javascript
[01:13:46]iG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
修改Python的pyxmpp2中的主循环使其提高性能
2015/04/24 Python
python输出当前目录下index.html文件路径的方法
2015/04/28 Python
python从入门到精通(DAY 1)
2015/12/20 Python
python xml.etree.ElementTree遍历xml所有节点实例详解
2016/12/04 Python
Django压缩静态文件的实现方法详析
2018/08/26 Python
Python绘制堆叠柱状图的实例
2019/07/09 Python
Python操作Sqlite正确实现方法解析
2020/02/05 Python
Python flask路由间传递变量实例详解
2020/06/03 Python
Python sklearn中的.fit与.predict的用法说明
2020/06/28 Python
css3实现书本翻页效果的示例代码
2021/03/08 HTML / CSS
韩国流行时尚女装网站:Dintchina(中文)
2018/07/19 全球购物
英国鹦鹉店:Parrot Essentials
2018/12/03 全球购物
《一株紫丁香》教学反思
2014/02/19 职场文书
剪彩仪式主持词
2014/03/19 职场文书
家居装修公司创业计划书范文
2014/03/20 职场文书
质量承诺书范文
2014/03/27 职场文书
班风学风建设方案
2014/05/06 职场文书
护士节演讲稿开场白
2014/08/25 职场文书
纪念九一八事变演讲稿:青少年应树立远大理想
2014/09/14 职场文书
先进个人推荐材料
2014/12/29 职场文书
综合办公室主任岗位职责
2015/04/01 职场文书
追讨欠款律师函
2015/06/24 职场文书
Python Django模型详解
2021/10/05 Python
《模拟人生4》推出新补丁 “婚礼奇缘”DLC终于得到修复
2022/04/03 其他游戏