Data Cleaning là gì? Hướng dẫn các bước làm sạch dữ liệu

marketing foundation

Tomorrow Marketers – Dữ liệu là đầu vào bắt buộc của các quyết định kinh doanh dựa trên dữ liệu, công nghệ machine learning (học máy) và artificial intelligence (AI). Vì vậy, doanh nghiệp cần đảm bảo chất lượng của dữ liệu để đảm bảo kết quả đầu ra có thể sử dụng trong việc đưa ra quyết định. Mặc dù các thị trường giao dịch dữ liệu (data marketplace) và các nhà cung cấp dữ liệu có thể giúp doanh nghiệp mua các báo cáo thị trường hoặc dataset sạch và có cấu trúc, nhưng những tổ chức này không thể đảm bảo chất lượng của dữ liệu nội bộ doanh nghiệp. Do đó, doanh nghiệp cần hiểu cách sử dụng công cụ và quy trình các bước làm sạch dữ liệu.

1. Làm sạch dữ liệu (data cleaning) là gì?

Làm sạch dữ liệu (data cleaning) là quá trình điều chỉnh hoặc loại bỏ dữ liệu không chính xác, sai định dạng, trùng lặp, không liên quan, không đầy đủ hoặc có vấn đề (dirty) trong cơ sở dữ liệu. Làm sạch dữ liệu hiệu quả sẽ đảm bảo các dữ liệu nhất quán và không có bất kỳ lỗi nào có thể gây ra vấn đề trong quá trình sử dụng hoặc phân tích sau này.

Trong đó, chuyển đổi dữ liệu (data migration) là quá trình trích xuất dữ liệu từ một vị trí và chuyển đổi sang một vị trí khác. Khó khăn của quá trình này chính là phải loại bỏ các dữ liệu trùng lặp hoặc thống nhất định dạng của dữ liệu.

2. Lợi ích của làm sạch dữ liệu

Dữ liệu được cho là một trong những tài sản quan trọng nhất của một doanh nghiệp, đặc biệt trong kỷ nguyên chuyển đổi số hiện nay. Theo một nghiên cứu của IBM, chất lượng dữ liệu kém tiêu tốn 3,1 nghìn tỷ đô la Mỹ mỗi năm. Trong biểu đồ bên dưới, chi phí của dữ liệu kém tăng theo cấp số nhân theo nguyên tắc chất lượng 1-10-100.

Nguồn ảnh: Validity

Một số ví dụ về các vấn đề có thể phát sinh từ dữ liệu không chính xác ví dụ:

Theo từng bộ phận trong một doanh nghiệp

  • Marketing: Một chiến dịch quảng cáo (ad campaign) sử dụng dữ liệu khách hàng có chất lượng kém, khiến hiệu quả tiếp cận khách hàng mục tiêu giảm rõ rệt. Điều này không chỉ kéo theo chi phí thu hút một khách hàng tăng mà còn làm gây phiền nhiễu, tạo trải nghiệm không tốt với doanh nghiệp.
  • Sales: Một nhân viên bán hàng không liên lạc được với các khách hàng cũ do không có dữ liệu cá nhân đầy đủ và chính xác.
  • Compliance: Các doanh nghiệp có khả năng phải đối mặt với các hình phạt nếu không đáp ứng các quy tắc bảo mật dữ liệu cho khách hàng. Do đó, doanh nghiệp cũng phải đảm bảo rằng dữ liệu sẽ được xử lý trong khuôn khổ tuân thủ GDPR.
  • Operations: Quy trình và thuật toán vận hành của máy móc trong sản xuất có thể gây ra nhiều vấn đề khi vận hành dựa trên dữ liệu chất lượng kém, ví dụ như các lỗi sản xuất thừa/thiếu sản phẩm, sai thứ tự quy trình lắp đặt,…

Theo từng ngành hàng

  • Chăm sóc sức khỏe: Dữ liệu không chính xác có thể khiến các bác sĩ chẩn đoán, điều trị và đưa ra đơn thuốc sai. Theo một cuộc khảo sát của Accenture, 18% giám đốc điều hành y tế tin rằng việc chất lượng dữ liệu kém là trở ngại chính để AI đạt được tiềm năng thực sự trong chăm sóc sức khỏe.
  • Kế toán/Tài chính: Dữ liệu thiếu chính xác và không đầy đủ có thể dẫn đến các quyết định vi phạm quy định hoặc làm chậm trễ trong việc đưa ra hành động do mất thời gian trong các bước kiểm tra thông tin một cách thủ công.
  • Sản xuất và Logistics: Định giá hàng tồn kho phụ thuộc vào dữ liệu chính xác. Nếu dữ liệu bị thiếu hoặc không nhất quán, điều này có thể dẫn đến các vấn đề về giao hàng và làm ảnh hưởng tới sự hài lòng của khách hàng.

Dữ liệu được đảm bảo chất lượng sẽ giúp các doanh nghiệp giảm thiểu khả năng đối mặt với những tình huống và vấn đề này. Dữ liệu chất lượng còn mang lại nhiều lợi ích khác như:

  • Cải thiện năng suất: Sau khi làm sạch dữ liệu, bạn có thể tập trung vào các nhiệm vụ công việc chính như phân tích dữ liệu, xây dựng dashboard thay vì tìm đúng dữ liệu, loại bỏ hoặc phải chỉnh sửa từng dòng dữ liệu không chính xác.
  • Chu kỳ bán hàng nhanh hơn: Với dữ liệu có chất lượng cao hơn, bộ phận marketing sẽ tiếp cận tới nhiều và đúng khách hàng tiềm năng hơn, có thêm dữ liệu để gợi ý các sản phẩm/dịch vụ phù hợp và chuyển đổi khách hàng. 
  • Đưa ra quyết định chính xác hơn.

Đọc thêm: Data Analysis là gì – Quy trình và phương pháp phân tích dữ liệu bạn cần biết

3. Nguyên nhân của các vấn đề về chất lượng dữ liệu

Dữ liệu có thể có nhiều vấn đề, đặc biệt khi doanh nghiệp kết hợp dữ liệu từ nhiều nguồn khác nhau. Có thể ví dụ một số vấn đề trong chất lượng của dữ liệu như: 

  • Dữ liệu bị trùng lặp (duplicate data): Có hai hoặc nhiều record có thông tin giống hệt nhau. Điều này có thể gây ra sai lệch về số lượng hàng tồn kho, trùng lặp tài sản thế chấp,…
  • Dữ liệu bị mâu thuẫn (conflict data): Khi cùng một record nhưng lại tạo ra hai dòng dữ liệu với hai thuộc tính khác nhau, dữ liệu lúc này đang ở trạng thái bị mâu thuẫn. Ví dụ, một công ty chỉ có một trụ sở nhưng trong database lại có hai địa chỉ khác nhau, điều này có thể gây khó khăn cho shipper. 
  • Dữ liệu không đầy đủ (incomplete data): Dữ liệu bị thiếu một số thuộc tính. Ví dụ, bảng lương của nhân viên không có dữ liệu về số an sinh xã hội cá nhân.
  • Dữ liệu không hợp lệ (invalid data): Một thuộc tính dữ liệu không phù hợp với các tiêu chuẩn dữ liệu đã đặt ra. Ví dụ: số điện thoại được lưu với 9 chữ số thay vì 10 chữ số.

Đọc thêm: Chất lượng dữ liệu: Không phải data nào cũng là vàng, marketer phải “đào” sao cho đúng?

Nguyên nhân của các lỗi dữ liệu trên có thể do:

  • Các vấn đề đồng bộ: Vấn đề này xảy ra khi dữ liệu được dẫn truyền giữa hai hệ thống, nhưng không được chia sẻ theo cách thức phù hợp. Ví dụ: phần mềm sales của ngân hàng tiếp nhận một khoản thế chấp mới nhưng không cập nhật vào hệ thống marketing của ngân hàng, nếu bộ phận marketing vẫn gửi thông báo tới khách hàng có thể khiến họ cảm thấy bối rối.
  • Các sai sót trong của phần mềm xử lý dữ liệu: Các phần mềm xử lý dữ liệu có thể có các sai sót khi lưu lại các dữ liệu bị lỗi trong hệ thống, ghi đè lên dữ liệu đúng, trùng lặp dữ liệu,… 
  • Thông tin bị xáo trộn bởi người dùng: Người dùng có thể cố tình cung cấp dữ liệu không đầy đủ hoặc không chính xác để bảo vệ quyền riêng tư của họ.

Đọc thêm: 5 nguyên tắc thu thập dữ liệu của doanh nghiệp

4. Như nào là dữ liệu chất lượng tốt? 

Có một số tiêu chí giúp doanh nghiệp đánh giá được chất lượng của dữ liệu:

Tính chuẩn xác (validity): Mức độ chặt chẽ của dữ liệu trong việc đáp ứng các quy tắc kinh doanh đã xác định. Một số quy tắc phổ biến như:

  • Mandatory constraints (Bắt buộc về tính đầy đủ của dữ liệu): Một số trường thông tin trong bảng bắt buộc không được để trống.
  • Data-type constraints (Thống nhất về định dạng dữ liệu): Các giá trị trong một cột phải thuộc một dạng dữ liệu nhất định.
  • Range constraints (Giới hạn phạm vi dữ liệu): Giá trị tối thiểu và tối đa cho dạng dữ liệu số hoặc ngày tháng
  • Foreign-key constraints (Thống nhất về foreign-key): đảm bảo mối liên kết giữa các bảng với nhau, giá trị của cột foreign-key phải tương ứng với giá trị primary-key ở bảng khác.
  • Unique constraints (Yêu cầu về tính duy nhất): Một số cột trong bảng phải là duy nhất trong bảng dữ liệu, ví dụ như cột customer_ID trong bảng dim_customer.
  • Regular expression patterns (Ràng buộc về cách thức diễn đạt): Các trường dữ liệu có định dạng free-text cần có quy tắc xác thực theo cách này, để dữ liệu được lưu trữ một cách thống nhất
  • Cross-field validation (Xác thực chéo giữa các trường dữ liệu): Một số cột dữ liệu lặp lại giữa các bảng khác nhau cần được xác thực chéo để đảm bảo tính đúng đắn về các giá trị dữ liệu. 

Tính chính xác (accuracy): Phản ánh mức độ trung thực của dữ liệu, các giá trị đo được trong bảng dữ liệu có gần với giá trị đích/ giá trị thực tế hay không.

Tính đầy đủ (completeness): Mức độ chi tiết và toàn diện của dữ liệu về một vấn đề, chủ thể

Tính nhất quán (consistency): Mức độ thống nhất của dữ liệu khi đối chiếu trên toàn bộ hệ thống dữ liệu và công cụ lưu trữ khác nhau.

Tính đồng nhất (uniformity): Đơn vị đo lường giống nhau được sử dụng trong tất cả các hệ thống dữ liệu.

Tính minh bạch của nguồn dữ liệu (traceability): Dữ liệu cần đảm bảo có thể truy tìm lại nguồn thu thập.

Tính kịp thời (timeliness): Dữ liệu phải được thu thập và cập nhật từ các nguồn mới nhất, “up-to-date” nhất. 

Đảm bảo đầy đủ những tiêu chí này có thể giúp doanh nghiệp có dữ liệu chất lượng tốt và sử dụng cho nhiều mục đích khác nhau.

5. 05 bước làm sạch dữ liệu

#1 – Xây dựng kế hoạch làm sạch dữ liệu

Đầu tiên, bạn cần hiểu rõ bản chất các vấn đề dirty data, biết được các lỗi sai này thường xảy ra ở giai đoạn nào trong quy trình thu thập, chuyển đổi và lưu trữ dữ liệu. Từ đây, bạn có thể xác định các nguyên nhân gốc rễ khi dữ liệu xảy ra lỗi sai và xây dựng kế hoạch để giải quyết vấn đề đó.

Dữ liệu được làm sạch mang lại hiệu quả cho tất cả phòng ban, bộ phận của doanh nghiệp, vì vậy, hãy đảm bảo bạn có thể giao tiếp cởi mở và đa chiều với các phòng ban. Bởi, không phải bạn, mà chính những người dùng cuối ở các phòng ban mới là người nhìn ra những vấn đề của dữ liệu trong quá trình sử dụng để thông báo cho bạn. 

Kế hoạch cần chỉ rõ:

  • Người chịu trách nhiệm: Với các doanh nghiệp lớn, cần phải có một phòng ban, bộ phận, một giám đốc dữ liệu (CDO) hoặc một vài cá nhân cụ thể chịu trách nhiệm làm việc trực tiếp với dữ liệu và cơ sở dữ liệu.
  • Metrics: Chất lượng dữ liệu nên được đánh giá một cách tóm tắt bằng một con số trên thang điểm 1-100. Mặc dù các dữ liệu khác nhau sẽ có mức độ chất lượng khác nhau, nhưng việc có một con số tổng thể sẽ giúp doanh nghiệp đo lường sự cải tiến liên tục của dữ liệu. 
  • Hành động: Kế hoạch cần vạch ra các hành động rõ ràng theo một timeline cụ thể để cập nhật nhanh chóng khi chất lượng dữ liệu và các mục tiêu của công ty thay đổi. 

#2 – Đảm bảo dữ liệu chính xác ngay từ nguồn đầu vào

Để tiết kiệm thời gian lần mò những lỗi sai của dữ liệu sau khi nó đã được lưu trữ trong các bảng của cơ sở dữ liệu, bạn nên phát hiện các vấn đề khiến dữ liệu sai lệch và thực hiện các chỉnh sửa ngay từ nguồn đầu vào. 

Ví dụ: nếu form đăng ký của bạn yêu cầu người dùng phải điền quá nhiều trường thông tin, họ có thể cảm thấy nản và không điền đầy đủ dữ liệu. Điều này dẫn tới các dòng dữ liệu bị thiếu và không có giá trị (null). Ngay khi tìm ra vấn đề này, bạn nên tối ưu form đăng ký để đảm bảo người dùng không bỏ qua trường dữ liệu nào. 

#3 – Đo lường độ chính xác của dữ liệu

Đầu tư vào thời gian, công cụ và các nghiên cứu cần thiết để đo lường độ chính xác của dữ liệu trong thời gian thực. 

Một cách khác để đo lường độ chính xác của dữ liệu là bạn có thể kiểm tra dữ liệu với các với các nguồn công khai (public resources). Chẳng hạn, để tự động trích xuất dữ liệu từ website dưới một định dạng đã được thiết kế, bạn có thể dựa vào trình thu thập dữ liệu website (web crawlers) hoặc các API quét website (web scraping API) như Web Scraper của Bright Data.

#4 – Thực hiện các kỹ thuật làm sạch dữ liệu

  • Standardizing: Đảm bảo rằng các dữ liệu cùng một trường đang ở cùng một dạng, cùng một hình thức, ví dụ: một số dữ liệu ngày tháng ở dạng mm-dd-yyyy cần được thống nhất chuyển về dạng dd-mm-yyyy.
  • Normalizing: Đảm bảo rằng tất cả dữ liệu được ghi lại một cách nhất quán.
  • Merging: Khi dữ liệu nằm rải rác trên nhiều tập dữ liệu, bạn có thể hợp nhất (merging) và tổng hợp các trường dữ liệu có liên quan để tạo thành một tệp data mới.
  • Eliminate duplicate: Loại bỏ các dữ liệu trùng lặp.
  • Aggregating: Sắp xếp dữ liệu và thể hiện nó dưới dạng tóm tắt.
  • Filtering: Ẩn các dữ liệu không cần thiết để tập trung các dữ liệu quan trọng mà chúng ta cần.
  • Scaling: Chuyển đổi dữ liệu sao cho phù hợp với một tỷ lệ cụ thể, chẳng hạn như 0-100 hoặc 0-1
  • Handling missing value: Quyết định bổ sung hay loại bỏ các dữ liệu thiếu giá trị.
  • Reducing noise/outliers: Loại bỏ các điểm dữ liệu trùng lặp và ngoại lai cho kỹ thuật phân tích hồi quy tuyến tính.

#5 – Nối dữ liệu

Nối dữ liệu là quy trình giúp doanh nghiệp xác định và hoàn thiện thông tin còn thiếu. Các nguồn bên thứ ba đáng tin cậy thường là một trong những lựa chọn tốt nhất để quản lý hoạt động này. 

Sau khi hoàn thành 5 bước này, dữ liệu của bạn sẽ sẵn sàng để xuất sang danh mục dữ liệu (data catalog) và được sử dụng khi cần phân tích. Dù vậy, hãy lưu ý rằng với các tập dữ liệu lớn, bạn sẽ gần như không thể đạt được độ sạch 100%

Về việc can thiệp, xử lý và làm sạch dữ liệu theo cách thủ công

Chỉnh sửa và làm sạch dữ liệu một cách thủ công từng dòng dữ liệu có thể không phải ý kiến hay, bởi công việc này chiếm nhiều thời gian, công sức. Dù vậy, trong trường hợp dữ liệu có giá trị cao hoặc khi cần hàng triệu điểm dữ liệu được dán nhãn như trong trường hợp hệ thống nhận dạng hình ảnh, việc cập nhật dữ liệu thủ công có thể có ý nghĩa. Một số lưu ý cho việc cập nhật dữ liệu thủ công:

  • Đảm bảo sắp xếp dữ liệu theo các thuộc tính khác nhau
  • Với các tập dữ liệu có kích thước lớn, hãy thử chia nhỏ chúng thành các tập nhỏ hơn để tăng tốc độ lặp lại quy trình
  • Lưu lại lịch sử và thông tin của mọi hoạt động làm sạch
  • Lấy mẫu (sampling) cũng là một kỹ thuật có thể giúp bạn đánh giá chất lượng dữ liệu. Giới hạn kích thước mẫu dữ liệu để đánh giá chất lượng sẽ giúp bạn tiết kiệm thời gian và nhanh chóng tìm ra một số vấn đề trong tập dữ liệu, thay vì phải scan và kiểm tra toàn bộ. Ví dụ: nếu bạn có 1.000 hàng dữ liệu và cần đảm bảo rằng vấn đề về chất lượng dữ liệu không xảy ra quá 5%, hãy kiểm tra 10% tập dữ liệu, tương đương 100 hàng dữ liệu.
  • Phân tích tóm tắt các phép toán thống kê như standard deviation (độ lệch chuẩn) hoặc tìm bao nhiêu dòng có missing value có thể giúp xác định nhanh vị trí xảy ra vấn đề của dữ liệu

Một số lưu ý khi làm sạch dữ liệu

  • Xem xét dữ liệu theo cách toàn diện nhất – không chỉ nghĩ đến việc ai sẽ thực hiện phân tích mà còn cả ai sẽ sử dụng các kết quả thu được từ dữ liệu đó
  • Tăng cường kiểm soát đối với đầu vào cơ sở dữ liệu
  • Sử dụng phần mềm có tính năng phát hiện dữ liệu ‘bẩn’ và có khả năng giải quyết các dữ liệu bị lỗi cơ bản
  • Với tập dữ liệu lớn, hãy đảm bảo giới hạn kích thước sample để giảm thiểu thời gian chuẩn bị và tăng hiệu suất làm sạch 
  • Kiểm tra liên tục xuyên suốt quy trình làm sạch dữ liệu, nhằm đảm bảo tránh lặp lại bất cứ lỗi sai nào, và tránh tốn nhiều công sức khi đã hoàn thành quy trình làm sạch… lại phát hiện ra một lỗi sai ở đầu quy trình
  • Học thêm các khóa học trực tuyến miễn phí như khóa học làm sạch dữ liệu của Kaggle nếu bạn muốn trau dồi kiến thức và kinh nghiệm xử lý, làm sạch dữ liệu

6. Khó khăn của làm sạch dữ liệu

Làm sạch dữ liệu không phải công việc đơn giản, khi công việc này đôi khi chiếm một nửa thời gian làm việc của một Data Analyst. Một số khó khăn có thể kể tới như:

  • Người xử lý dữ liệu có kiến thức hạn chế về những gì gây ra sự bất thường trong dữ liệu (anomalies), gây khó khăn trong việc đưa ra các xử lý phù hợp.
  • Loại bỏ dữ liệu không cẩn thận sẽ kéo theo hệ quả đánh mất thông tin, khiến dữ liệu không đầy đủ và chính xác.
  • Bảo trì liên tục có thể gây tốn kém và tốn thời gian.
  • Rất khó để xây dựng kế hoạch và biểu đồ quy trình làm sạch dữ liệu trước khi vấn đề về dữ liệu thực sự xảy ra.

Tạm kết

Làm sạch dữ liệu giúp bạn đảm bảo các xử lý và phân tích đưa ra có độ chính xác cao. Nếu bạn muốn nâng cao tư duy làm việc, xử lý, phân tích dữ liệu để tìm ra các insight ẩn, phát hiện vấn đề, tránh đưa ra các quyết định cảm tính, hãy tham khảo khóa học Data Analysis của Tomorrow Marketers nhé.

Tagged: