เปิดโฟลเดอร์โปรเจกต์
เลือกโฟลเดอร์ที่มีไฟล์ส่งออกของคุณเองและสำเนาของไฟล์นั้น เครื่องมือไฟล์ทำงานภายในโฟลเดอร์แชตนั้น
การทำความสะอาดข้อมูลอัตโนมัติในที่นี้หมายถึงสคริปต์ Python ที่นำกฎที่คุณเขียนไว้ไปใช้กับไฟล์และบันทึกผลเป็นไฟล์ใหม่ คุณมีไฟล์ส่งออกหนึ่งไฟล์ที่มีช่องว่างเกิน แถวซ้ำ และตัวเลขที่เก็บเป็นข้อความ สคริปต์เป็นของคุณ คุณอ่านและรันซ้ำได้ และไฟล์ต้นฉบับไม่เคยเป็นผลลัพธ์
เลือกโฟลเดอร์ที่มีไฟล์ส่งออกของคุณเองและสำเนาของไฟล์นั้น เครื่องมือไฟล์ทำงานภายในโฟลเดอร์แชตนั้น
บอกว่าจะตัดช่องว่างคอลัมน์ใด คีย์ใดใช้หาข้อมูลซ้ำ และช่องว่างจะทำอย่างไร Plan only แสดงรายการขั้นตอนก่อน
Shell รันสคริปต์ด้วยคำสั่ง Python ของคุณและแสดงรหัสออกจริงกับจำนวนแถวที่พิมพ์ออกมา
อ่าน diff เทียบไฟล์ใหม่กับต้นฉบับ และสุ่มตรวจแถวด้วยมือก่อนที่คุณจะยอมรับ
./1 ไฟล์./clean_customers.pyบันทึกแล้วyour Python command clean_customers.pyรหัสออก 0./clean_customers.py17 บรรทัดrows = [
{"email": " Ann@Mail.com ", "age": "34"},
{"email": "ann@mail.com", "age": "34"},
{"email": "Bo@Mail.com", "age": "n/a"},
]
seen, clean = set(), []
for row in rows:
email = row["email"].strip().lower()
if email in seen:
continue
seen.add(email)
try:
age = int(row["age"].strip())
except ValueError:
age = None
clean.append({"email": email, "age": age})
print("rows in:", len(rows), "rows out:", len(clean))สคริปต์ตัดช่องว่าง แปลงอีเมลเป็นตัวพิมพ์เล็ก ข้ามรายการซ้ำด้วย set และแปลงข้อความอายุเป็นตัวเลขหรือ None มีแถวสมมุติ 3 แถว เมื่อรันจะพิมพ์ว่าเข้า 3 ออก 2
การลบข้อมูลซ้ำออกจาก CSV ขนาดใหญ่ต้องมีคีย์ที่ชัดเจนก่อน เช่น ที่อยู่อีเมลที่ทำให้เป็นรูปแบบมาตรฐานแล้ว เพราะข้อมูลซ้ำที่ตรงกันทุกตัวอักษรจะพลาดแถวที่ต่างกันเพียงช่องว่างหรือตัวพิมพ์เล็กใหญ่ Fredit Flow ใช้ grep ค้นหาช่องว่างเกินและตัวพิมพ์ใหญ่ในคอลัมน์คีย์ จากนั้น write_file บันทึก dedupe.py และ Shell รันกับสำเนาของไฟล์ส่งออกด้วยคำสั่ง Python ของคุณเอง สคริปต์เก็บแถวแรกของแต่ละคีย์และเขียนแถวที่เหลือลงไฟล์แยก ไฟล์ต้นฉบับยังอยู่ ตรวจจำนวนแถวสองค่าที่สคริปต์พิมพ์ เปิดไฟล์ตรวจทาน และยืนยันว่าแต่ละคู่เป็นลูกค้าคนเดียวกันจริงก่อนยอมรับผลลัพธ์
การทำความสะอาดข้อมูล CSV แทบไม่เสร็จในรอบเดียว และการวนซ้ำระหว่างการทำความสะอาดกับการวิเคราะห์เป็นเรื่องปกติ กราฟแสดงค่าแปลก คุณเพิ่มกฎแล้วรันอีกครั้ง ขอให้เปลี่ยนแปลง edit_file อัปเดตสคริปต์และแสดง diff Shell รันซ้ำกับสำเนาเดิม และการรันครั้งใหม่ควรเขียนลงไฟล์ผลลัพธ์ที่ชื่อต่างกัน เพื่อให้ไฟล์แรกยังอยู่ ซึ่งตรวจได้ใน diff จากนั้นรันหนึ่งครั้งกับไฟล์ตัวอย่างที่สองจากแหล่งเดียวกัน ถ้ารหัสออกหรือจำนวนแถวดูผิด ให้หยุด อ่าน diff อีกครั้ง และตัดสินใจเอง