用Python在.CSV文件中的计算年龄

时间:2018-10-31 00:34:06

标签: python pandas csv datetime calculation

我有一个Customer_Profile.csv文件,其中包含一列Birthday,其值类似于19460620(YearMonthDay)格式。

我只想计算当前/今天的年龄。另外,在计算了年龄之后,我还想在一个名为Age_Group的新列中对年龄进行分类/分组。

例如,年龄段应为:

年龄在10至20之间的是第1组
21岁至30岁之间是第2组
31岁至40岁之间是第3组

,依此类推。为上述任务编写python脚本的任何想法。

1 个答案:

答案 0 :(得分:0)

您可以使用[JsonConverter(typeof(BConverter))]轻松解析出生日期,如下所示:

datetime.datetime.strptime

和当前时间:

birth_date = datetime.datetime.strptime("19460620", "%Y,%m%d")

然后您可以使用以下信息获取年龄:

now = datetime.datetime.now()

要分组年龄,可以使用整数除法:

birthday_passed = (now.month > birth_date.month) or 
                  (now.month == birth_date.month and now.day == birth_date.day)
age = now.year - birth_date.year
if birthday_passed:
    age -= 1

使用熊猫可以轻松地进行csv读写。只需查找group = (age - 1) // 10 pandas.read_csv