Год расчета возраста в файле .CSV от Python - PullRequest
0 голосов
/ 31 октября 2018

У меня есть файл Customer_Profile.csv, который содержит столбец Birthday и значения имеют формат 19460620 (YearMonthDay).

Я хочу рассчитать только год возраста от настоящего / настоящего дня. Кроме того, после расчета возраста я также хочу классифицировать / сгруппировать возраст в новом столбце с именем Age_Group.

Например, возрастная группа должна быть следующей:

Возраст от 10 до 20 лет - группа 1
Возраст от 21 до 30 лет - группа 2
Возраст от 31 до 40 лет - группа 3

и так далее. Любая идея написать скрипт Python для вышеуказанных задач.

1 Ответ

0 голосов
/ 07 ноября 2018

Вы можете легко разобрать дату рождения, используя 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

для группировки ваших возрастов вы можете использовать целочисленное деление:

group = (age - 1) // 10

Чтение и запись в csv достаточно просты для использования панд. просто посмотрите вверх pandas.read_csv и pandas.to_csv

...