Isonjululwe: guqula ikholamu yomhla wokuzalwa ibe yipanda yobudala

Kwihlabathi lanamhlanje, uhlalutyo lwedatha luye lwaba lubaluleke kakhulu, kwaye esinye sezona zixhobo zidumileyo ezisetyenziswa ngabahlalutyi bedatha kunye nososayensi bedatha yiPython kunye nelayibrari yepandas. I-Pandas inamandla, uhlalutyo lwedatha oluvulekileyo kunye nesixhobo sokukhwabanisa esivumela ukunyanzeliswa lula kwezakhiwo zedatha kunye nochungechunge. Ingxaki enye eqhelekileyo abadibana nayo abasebenzisi kukuguqula imihla yokuzalwa ukuya kwiminyaka yobudala ukuze kuhlalutye oluchanekileyo nolusebenzayo. Kweli nqaku, siza kuhlolisisa indlela yokujongana nalo mbandela ngemizekelo ecacileyo kunye neenkcazo zokuphunyezwa kwekhowudi.

I-Pandas sisixhobo esisebenza ngeendlela ezininzi esihlala sibandakanya ukusebenza kunye nezinto zeDateTime - oku kunjalo xa ujongene nemihla yokuzalwa. Inyathelo lokuqala lokuguqula imihla yokuzalwa ibe bubudala ifuna i-arithmetic elula kunye nethala leencwadi leDateTime. Oku kuya kusenza sikwazi ukufumana ubudala bomntu ngokubala umahluko phakathi komhla wabo wokuzalwa kunye nomhla wangoku.

Masiqale ngokungenisa ngaphandle amathala eencwadi ayimfuneko:

import pandas as pd
from datetime import datetime

Okulandelayo, qwalasela isethi yedatha elula equlethe le datha ilandelayo malunga nomntu ngamnye:

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

Kule khowudi ingasentla, siguqula ikholamu ethi 'Birth_Date' kwizinto zeDateTime.

Ukubala Ubudala

Ngoku, sikulungele ukubala iminyaka yaba bantu ngokufumana umahluko phakathi komhla wabo wokuzalwa kunye nomhla wangoku. Ukwenza oku, landela la manyathelo:

1. Yenza umsebenzi obizwa ngokuba yi-'calculate_age' ethatha umhla wokuzalwa njengegalelo kwaye ibuyisele iminyaka yomntu.
2. Faka lo msebenzi kumhlathi othi 'Birth_Date' kwiDathaFrame.

Nantsi ikhowudi yokuphumeza ingqiqo engentla:

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)

Kolu lwazi lwekhowudi, senze umsebenzi obizwa ngokuba yi-'calculate_age' efumana i-birth_date njengegalelo, ibala umhla wangoku usebenzisa i-datetime.now (), kwaye ibala iminyaka yomntu ngokuthabatha unyaka wokuzalwa kulo nyaka. Ukuba zabo usuku lokuzalwa alukenzeki kulo nyaka, sithabatha omnye unyaka.

Okokugqibela, sisebenzisa lo msebenzi kwikholamu 'Yokuzalwa_Umhla' sisebenzisa indlela yokusebenzisa () indlela, kwaye iminyaka ebalwayo igcinwa kwikholamu entsha ye'Age' kwiDathaFrame.

Ukusebenzisa i-Numpy kunye nePandas kuBalo lobudala

Kungenjalo, sinokusebenzisa ithala leencwadi elinamandla ngokudityaniswa neepandas kulo msebenzi. Ukuguqula imihla yokuzalwa ibe minyaka usebenzisa inumpy, landela la manyathelo:

1. Thatha ngaphandle ithala leencwadi elingenamsebenzi.
2. Sebenzisa umsebenzi 'womgangatho' ongacacanga ukubala iminyaka.

Nanku umzekelo wendlela yokwenza oku:

import numpy as np

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

Le khowudi isebenzisa 'umgangatho' umsebenzi we-numpy ukurhangqa isiphumo sokwahlulwa kwendawo edadayo ye inani leentsuku ukusukela kumhla wokuzalwa ngama-365.25 (uthathela ingqalelo iminyaka emisiweyo).

Isishwankathelo, ngokuxhasa amathala eencwadi afana neepandas kunye nexesha lomhla okanye iipandas kunye nenumpy, iba ngumthungo ukuguqula iikholamu zomhla wokuzalwa zibe bubudala phakathi kwedatha. Ukulandela amanyathelo achaziweyo kunye nokuqonda ikhowudi enikeziweyo kweli nqaku kuya kukuxhobisa ngolwazi lokulawula idatha enjalo kwaye wenze uhlalutyo oluchanekileyo noluchanekileyo.

Izithuba ezihambelanayo:

Shiya Comment