Nalutas: i-convert ang column ng petsa ng kapanganakan sa mga panda ng edad

Sa mundo ngayon, ang pagsusuri ng data ay naging lalong mahalaga, at isa sa pinakasikat na tool na ginagamit ng mga data analyst at data scientist ay ang Python na may pandas library. Ang Pandas ay isang malakas, open-source na data analysis at manipulation tool na nagbibigay-daan para sa madaling pagmamanipula ng mga istruktura at serye ng data. Ang isang karaniwang problema na nararanasan ng mga user ay ang pag-convert ng mga petsa ng kapanganakan sa mga edad para sa mas tumpak at praktikal na pagsusuri. Sa artikulong ito, susuriin natin kung paano haharapin ang isyung ito nang may malinaw na mga halimbawa at paliwanag ng pagpapatupad ng code.

Ang Pandas ay isang maraming nalalaman na tool na kadalasang nagsasangkot ng pagtatrabaho sa mga bagay ng DateTime - ito ang kaso kapag nakikitungo sa mga petsa ng kapanganakan. Ang unang hakbang upang i-convert ang mga petsa ng kapanganakan sa edad ay nangangailangan ng simpleng aritmetika gamit ang DateTime library. Ito ay magbibigay-daan sa amin na mahanap ang edad ng mga indibidwal sa pamamagitan ng pagkalkula ng pagkakaiba sa pagitan ng petsa ng kanilang kapanganakan at ng kasalukuyang petsa.

Magsimula tayo sa pamamagitan ng pag-import ng mga kinakailangang aklatan:

import pandas as pd
from datetime import datetime

Susunod, isaalang-alang ang isang simpleng dataset na naglalaman ng sumusunod na data tungkol sa mga indibidwal:

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'])

Sa code sa itaas, kino-convert namin ang column na 'Birth_Date' sa DateTime object.

Pagkalkula ng Edad

Ngayon, handa na kaming kalkulahin ang mga edad ng mga indibidwal na ito sa pamamagitan ng paghahanap ng pagkakaiba sa pagitan ng petsa ng kanilang kapanganakan at ng kasalukuyang petsa. Upang gawin ito, sundin ang mga hakbang na ito:

1. Gumawa ng function na tinatawag na 'calculate_age' na kumukuha ng birthdate bilang input at ibinabalik ang edad ng tao.
2. Ilapat ang function na ito sa column na 'Birth_Date' sa DataFrame.

Narito ang code para ipatupad ang logic sa itaas:

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)

Sa code snippet na ito, gumawa kami ng function na tinatawag na 'calculate_age' na tumatanggap ng birth_date bilang input, kinakalkula ang kasalukuyang petsa gamit ang datetime.now(), at kinakalkula ang edad ng tao sa pamamagitan ng pagbabawas ng kanilang taon ng kapanganakan mula sa kasalukuyang taon. Kung ang kanilang ang petsa ng kapanganakan ay hindi nangyari sa taong ito, nagbabawas tayo ng karagdagang taon.

Panghuli, inilalapat namin ang function na ito sa column na 'Birth_Date' gamit ang apply() na paraan, at ang mga nakalkulang edad ay iniimbak sa isang bagong column na 'Edad' sa DataFrame.

Paggamit ng Numpy at Pandas para sa Pagkalkula ng Edad

Bilang kahalili, maaari nating gamitin ang malakas na numpy library kasama ng mga panda para sa gawaing ito. Upang i-convert ang mga petsa ng kapanganakan sa mga edad gamit ang numpy, sundin ang mga hakbang na ito:

1. I-import ang numpy library.
2. Gamitin ang numpy 'floor' function para kalkulahin ang edad.

Narito ang isang halimbawa kung paano ito gawin:

import numpy as np

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

Ang code na ito ay gumagamit ng function na 'floor' ng numpy upang i-round down ang resulta ng floating-point division ng bilang ng mga araw mula noong petsa ng kapanganakan ng 365.25 (isinasaalang-alang ang mga leap year).

Sa buod, sa pamamagitan ng paggamit ng mga aklatan tulad ng mga pandas at datetime o pandas at numpy, nagiging seamless ang pag-convert ng mga column ng petsa ng kapanganakan sa edad sa loob ng isang dataset. Ang pagsunod sa ipinaliwanag na mga hakbang at pag-unawa sa code na ibinigay sa artikulong ito ay magbibigay sa iyo ng kaalaman upang manipulahin ang naturang data at magsagawa ng mas mahusay at tumpak na pagsusuri.

Kaugnay na mga post:

Mag-iwan ng komento