ในโลกปัจจุบัน การวิเคราะห์ข้อมูลมีความสำคัญมากขึ้นเรื่อย ๆ และหนึ่งในเครื่องมือที่นักวิเคราะห์ข้อมูลและนักวิทยาศาสตร์ข้อมูลนิยมใช้มากที่สุดคือ Python กับไลบรารีแพนด้า Pandas เป็นเครื่องมือวิเคราะห์และจัดการข้อมูลแบบโอเพ่นซอร์สอันทรงพลังที่ช่วยให้จัดการโครงสร้างและชุดข้อมูลได้ง่าย ปัญหาทั่วไปประการหนึ่งที่ผู้ใช้พบคือการแปลงวันเกิดเป็นอายุเพื่อการวิเคราะห์ที่แม่นยำและใช้งานได้จริง ในบทความนี้ เราจะเจาะลึกถึงวิธีการจัดการกับปัญหานี้ด้วยตัวอย่างที่ชัดเจนและคำอธิบายของการติดตั้งโค้ด
Pandas เป็นเครื่องมือสารพัดประโยชน์ที่มักเกี่ยวข้องกับการทำงานกับออบเจกต์ DateTime ซึ่งเป็นกรณีที่ต้องจัดการกับวันเกิด ขั้นตอนแรกในการแปลงวันเกิดเป็นอายุต้องใช้เลขคณิตอย่างง่ายกับไลบรารี DateTime ซึ่งจะช่วยให้เราสามารถค้นหาอายุของแต่ละบุคคลได้โดยการคำนวณความแตกต่างระหว่างวันเกิดและวันที่ปัจจุบัน.
เริ่มต้นด้วยการนำเข้าไลบรารีที่จำเป็น:
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'])
ในโค้ดข้างต้น เรากำลังแปลงคอลัมน์ 'Birth_Date' เป็นวัตถุ DateTime
การคำนวณอายุ
ตอนนี้เราพร้อมที่จะคำนวณอายุของบุคคลเหล่านี้แล้วโดยค้นหาความแตกต่างระหว่างวันเกิดและวันที่ปัจจุบัน โดยทำตามขั้นตอนเหล่านี้:
1. สร้างฟังก์ชันที่ชื่อว่า 'calculate_age' ซึ่งใช้วันเกิดเป็นอินพุตและส่งกลับอายุของบุคคลนั้น
2. ใช้ฟังก์ชันนี้กับคอลัมน์ 'Birth_Date' ใน DataFrame
นี่คือรหัสที่จะใช้ตรรกะข้างต้น:
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)
ในข้อมูลโค้ดนี้ เราสร้างฟังก์ชันที่ชื่อว่า 'calculate_age' ซึ่งรับข้อมูลวันเกิดเป็นอินพุต คำนวณวันที่ปัจจุบันโดยใช้ datetime.now() และคำนวณอายุของบุคคลโดยการลบปีเกิดออกจากปีปัจจุบัน ถ้าพวกเขา วันเกิดปีนี้ไม่เกิดเราลบเพิ่มอีกปี
สุดท้าย เราใช้ฟังก์ชันนี้ในคอลัมน์ 'Birth_Date' โดยใช้วิธี apply() และอายุที่คำนวณได้จะถูกจัดเก็บไว้ในคอลัมน์ 'Age' ใหม่ใน DataFrame
การใช้ Numpy และ Pandas ในการคำนวณอายุ
หรืออีกวิธีหนึ่ง เราสามารถใช้ไลบรารี่ที่มีประสิทธิภาพร่วมกับหมีแพนด้าสำหรับงานนี้ หากต้องการแปลงวันเกิดเป็นอายุโดยใช้ numpy ให้ทำตามขั้นตอนเหล่านี้:
1. นำเข้าไลบรารี numpy
2. ใช้ฟังก์ชัน 'ชั้น' ที่เป็นตัวเลขเพื่อคำนวณอายุ
นี่คือตัวอย่างวิธีการ:
import numpy as np df['Age'] = np.floor((datetime.now() - df['Birth_Date']).dt.days / 365.25)
รหัสนี้ใช้ฟังก์ชัน 'floor' ของ numpy เพื่อปัดเศษผลลัพธ์การหารทศนิยมของ จำนวนวัน ตั้งแต่วันเกิดภายใน 365.25 (โดยคำนึงถึงปีอธิกสุรทิน)
โดยสรุป การใช้ประโยชน์จากไลบรารี เช่น pandas และ datetime หรือ pandas และ numpy ทำให้การแปลงคอลัมน์วันเกิดเป็นอายุภายในชุดข้อมูลเป็นไปอย่างราบรื่น การทำตามขั้นตอนที่อธิบายไว้และการทำความเข้าใจรหัสที่ให้ไว้ในบทความนี้จะช่วยให้คุณมีความรู้ในการจัดการข้อมูลดังกล่าวและดำเนินการวิเคราะห์ที่มีประสิทธิภาพและแม่นยำยิ่งขึ้น