รวม 10 โค้ดจัดการข้อมูล เป๊ะในพริบตา!

รวม 10 โค้ดจัดการข้อมูล เป๊ะในพริบตา!

Business

3 นาที

13 มี.ค. 2025

แชร์

เคยไหม? เปิดไฟล์ข้อมูลมาแล้วเจอแต่ข้อมูลรก ไม่พร้อมใช้งาน 
ไม่ว่าจะเป็น…
❕ ตัวเลขซ้ำซ้อน
❕ ตัวหนังสือที่สะกดผิด
❕ ค่าแปลกๆ ที่ไม่เข้าพวก
❕ ช่องว่างที่ขาดข้อมูล

ปัญหาเหล่านี้นี่แหละ! เป็นตัวการที่ทำให้การวิเคราะห์ข้อมูลของเราเพี้ยนไปได้ ดังนั้นก่อนจะเริ่มทำงานกับข้อมูลใดๆ ก็ตาม “การทำความสะอาดข้อมูล” (Data Cleaning) เป็นเรื่องสำคัญ เพื่อให้ได้ข้อมูลที่พร้อมสำหรับการวิเคราะห์ที่แม่นยำ

รวม 10 โค้ด Python ที่สามารถใช้สำหรับงานทำความสะอาดข้อมูลได้ในพริบตา


1️⃣ เปลี่ยนอักษรให้เป็นตัวพิมพ์ใหญ่
การทำให้รูปแบบของอักษรข้อความ (String)สอดคล้องกันตลอดทั้งชุดข้อมูลเป็นสิ่งสำคัญ

ตัวอย่างการทำให้ชื่อเป็นตัวพิมพ์ใหญ่ทั้งหมด

data = [{**d, “name”: d[“name”].title()} for d in data]

2️⃣ แปลงชนิดข้อมูล
การทำให้ชนิดข้อมูลมีความสอดคล้องกัน และถูกต้องตลอดทั้งชุดข้อมูลเป็นสิ่งจำเป็นสำหรับการวิเคราะห์ที่แม่นยำ

ตัวอย่างการเปลี่ยนอายุเป็นจำนวนเต็ม
data = [{**d, “age”: int(d[“age”]) if isinstance(d[“age”], (int, float)) else 25} for d in data]

3️⃣ เช็คช่วงของตัวเลข
ตรวจสอบให้แน่ใจว่าค่าตัวเลขอยู่ในช่วงที่ยอมรับได้

ตัวอย่างการตรวจสอบว่าอายุอยู่ในช่วง 18 ถึง 60 ปี โดยกำหนดค่าอายุเป็น 25 หากไม่อยู่ในเกณฑ์
data = [{**d, “age”: d[“age”] if isinstance(d[“age”], int) and 18 <= d[“age”] <= 60 else 25} for d in data]

4️⃣ ตรวจสอบรูปแบบอีเมล
ความผิดพลาดจากการกรอกข้อมูลโดยมนุษย์เกิดขึ้นได้เป็นปกติ ดังนั้นคนที่นำข้อมูลไปทำงานต่อ ต้องคอยตรวจสอบความไม่สอดคล้องกันของรูปแบบ

ตรวจสอบว่าอีเมลมีทั้งเครื่องหมาย “@” และ “.” หรือไม่ และแทนที่ค่าเป็น ‘[email protected]’ หากรูปแบบอีเมลไม่ถูกต้อง
data = [{**d, “email”: d[“email”] if “@” in d[“email”] and “.” in d[“email”] else “[email protected]”} for d in data]

5️⃣ จัดการกับค่าที่ขาดหายไป
ค่าที่ขาดหายไปเป็นอีกหนึ่งปัญหาที่พบบ่อยในชุดข้อมูลส่วนใหญ่ เราจึงต้องตรวจสอบ และอาจแทนที่ค่าที่ขาดหายไปด้วยค่าเริ่มต้น

กำหนดเงินเดือนเริ่มต้น 30,000 หากเงินเดือนขาดหายไป
data = [{**d, “salary”: d[“salary”] if d[“salary”] is not None else 30000.00} for d in data]

6️⃣ ปรับรูปแบบวันที่ให้เป็นมาตรฐาน
เมื่อทำงานกับวันที่และเวลา สิ่งสำคัญคือต้องให้ข้อมูลทั้งหมดอยู่ในรูปแบบเดียวกัน

แปลงรูปแบบวันที่ให้เป็นตามมาตราฐานเดียวกัน และให้ค่าเริ่มต้นเป็น ‘2023-01-01’ หากข้อมูลไม่ถูกต้อง
data = [{**d, “join_date”: (lambda x: (datetime.strptime(x, ‘%Y-%m-%d’).date() if ‘-‘ in x and len(x) == 10 else datetime.strptime(x, ‘%d-%m-%Y’).date()) if x and ‘invalid-date’ not in x else ‘2023-01-01’)(d[‘join_date’])} for d in data]

7️⃣ ล้างค่าติดลบออก
บางครั้งข้อมูลตัวเลขบางอย่าง ไม่สามารถมีค่าที่ติดลบได้ เช่น อายุ เงินเดือน หากมีค่าติดลบสามารถแทนที่ด้วยค่าเริ่มต้นได้

แทนที่ค่าเงินเดือนที่ติดลบด้วยศูนย์
data = [{**d, “salary”: max(d[“salary”], 0)} for d in data]

8️⃣ ตรวจสอบข้อมูลซ้ำ
การลบข้อมูลที่ซ้ำกันเป็นสิ่งสำคัญก่อนที่คุณจะวิเคราะห์ข้อมูล

ลบข้อมูลที่ซ้ำกันโดยอิงจากฟิลด์ชื่อ
data = {tuple(d.items()) for d in data}

9️⃣ ปรับขนาดค่าตัวเลข
การปรับขนาดค่าตัวเลขบางครั้งอาจช่วยในการวิเคราะห์ที่สอดคล้องกันมากขึ้น

ปรับค่าเงินเดือนให้เป็นเปอร์เซ็นต์ของเงินเดือนสูงสุด
max_salary = max(d[“salary”] for d in data)
data = [{**d, “salary”: (d[“salary”] / max_salary * 100) if max_salary > 0 else 0} for d in data]

🔟 เคลียร์ช่องว่างที่ไม่จำเป็น
บางครั้งข้อมูลอาจจะเว้นช่วง ขาดหาย ไม่ครบ จึงต้องลบช่องว่างที่ไม่จำเป็นออก
#ตัดช่องว่างออกจากชื่อเพื่อให้ข้อมูลสะอาดขึ้น
data = [{**d, “name”: d[“name”].strip()} for d in data]

การทำความสะอาดข้อมูลเป็น “หัวใจสำคัญ” ของการวิเคราะห์ข้อมูลที่มีประสิทธิภาพ โค้ด Python บรรทัดเดียว ก็สามารถช่วยแก้ปัญหาข้อมูลซ้ำ, รูปแบบผิด, ค่าไม่ตรงช่วง, และข้อมูลหาย ได้อย่างรวดเร็วและง่ายดาย

ก้าวไปอีกขั้นในโลกของข้อมูล สู่การผู้เชี่ยวชาญด้านการเตรียมข้อมูลอย่างแท้จริง กับ Data Ready Bootcamp คอร์สเรียนที่จะเปลี่ยนคุณจากมือใหม่ให้เป็นมือโปรด้าน Data

ในคอร์ส Data Ready Bootcamp นอกจากความรู้ และทักษะจำเป็นสำหรับการทำงาน Data คุณจะได้…
✨ลงมือปฏิบัติผ่านการทำโปรเจค
✨เรียนรู้กรณีศึกษาจากธุรกิจจริง
✨แนะแนวทางเตรียมพร้อมย้ายสายสู่งาน Data
✨ปรึกษากับผู้เชี่ยวชาญในสายงานแบบตัวต่อตัว
✨คอนเนคชันสำหรับคนวัยทำงาน

พร้อมแล้วหรือยังที่จะพัฒนาทักษะการสื่อสารข้อมูลของคุณให้ทรงพลังยิ่งขึ้น? มาร่วมเป็นส่วนหนึ่งของ Data Ready Bootcamp และเรียนรู้ทักษะ Data Analytics ตั้งแต่เริ่มต้น ถึงการต่อยอดระดับสูงที่จะช่วยให้คุณสื่อสารข้อมูลได้อย่างมีประสิทธิภาพ สร้างผลกระทบ และขับเคลื่อนการเปลี่ยนแปลงด้วยข้อมูลไปด้วยกัน
สำรองที่นั่งได้ที่นี่:: https://www.truedigitalacademy.com/course/data-ready-bootcamp

ไม่จำเป็นต้องมีพื้นฐาน ก็เรียนได้ 📌