Решено: претворите колону датума рођења у старост панди

У данашњем свету, анализа података постаје све важнија, а један од најпопуларнијих алата који користе аналитичари података и научници података је Питхон са библиотеком панда. Пандас је моћан алат за анализу и манипулацију података отвореног кода који омогућава лаку манипулацију структурама података и серијама. Један уобичајени проблем са којим се корисници сусрећу је претварање датума рођења у године ради прецизније и практичније анализе. У овом чланку ћемо се позабавити јасним примерима и објашњењима имплементације кода како да решимо овај проблем.

Пандас је свестран алат који често укључује рад са објектима ДатеТиме – то је случај када се ради о датумима рођења. Први корак за претварање датума рођења у године захтева једноставну аритметику са библиотеком ДатеТиме. Ово ће нам омогућити да пронађемо старост појединаца тако што ћемо израчунати разлику између њиховог датума рођења и тренутног датума.

Почнимо са увозом потребних библиотека:

import pandas as pd
from datetime import datetime

Затим, размотрите једноставан скуп података који садржи следеће податке о појединцима:

data = {'Name': ['John', 'Paul', 'George', 'Ringo'],
        'Birth_Date': ['1940-10-09', '1942-06-18', '1943-02-25', '1940-07-07']
       }

df = pd.DataFrame(data)
df['Birth_Date'] = pd.to_datetime(df['Birth_Date'])

У горњем коду, колону 'Биртх_Дате' конвертујемо у објекте ДатеТиме.

Израчунавање старости

Сада смо спремни да израчунамо старост ових особа тако што ћемо пронаћи разлику између њиховог датума рођења и тренутног датума. Да бисте то урадили, следите ове кораке:

1. Креирајте функцију под називом 'цалцулате_аге' која узима датум рођења као улаз и враћа старост особе.
2. Примените ову функцију на колону 'Биртх_Дате' у оквиру ДатаФраме.

Ево кода за имплементацију горње логике:

def calculate_age(birth_date):
    today = datetime.now()
    age = today.year - birth_date.year - ((today.month, today.day) <
                                          (birth_date.month, birth_date.day))
    return age

df['Age'] = df['Birth_Date'].apply(calculate_age)

У овом исечку кода направили смо функцију под називом 'цалцулате_аге' која прима датум рођења као улаз, израчунава тренутни датум користећи датетиме.нов() и израчунава старост особе одузимањем године њеног рођења од текуће године. Ако њихова рођендан се није догодио ове године, одузимамо додатну годину.

Коначно, ову функцију примењујемо на колону 'Биртх_Дате' користећи методу аппли(), а израчунати узрасти се чувају у новој колони 'Аге' у ДатаФраме-у.

Коришћење Нумпи и Пандас за израчунавање старости

Алтернативно, за овај задатак можемо користити моћну библиотеку нумпи у комбинацији са пандама. Да бисте датуме рођења претворили у узрасте користећи нумпи, следите ове кораке:

1. Увезите библиотеку нумпи.
2. Користите функцију нумпи 'спрат' да бисте израчунали старост.

Ево примера како то да урадите:

import numpy as np

df['Age'] = np.floor((datetime.now() - df['Birth_Date']).dt.days / 365.25)

Овај код користи нумпи-јеву 'флоор' функцију да заокружи наниже резултат дељења са помичним зарезом број дана од датума рођења за 365.25 (узимајући у обзир преступне године).

Укратко, коришћењем библиотека као што су пандас и датетиме или пандас и нумпи, постаје беспрекорно претварање колона датума рођења у старост унутар скупа података. Праћење објашњених корака и разумевање кода датог у овом чланку ће вас наоружати знањем да манипулишете таквим подацима и извршите ефикаснију и тачнију анализу.

Релатед постс:

Оставите коментар