Skip to content

📝 Blog Buổi 3: 80% thời gian của Data Analyst đi về đâu?

Garbage in, garbage out. Dữ liệu bẩn không làm ra insight — nó làm ra thảm họa.

Chiều thứ 6. 17h45. Bạn chuẩn bị tắt máy đi uống trà sữa.

Sếp gửi email. Đính kèm: một file Excel 50 tab. Tiêu đề: "Tổng hợp dữ liệu 50 nhà phân phối — cần báo cáo sáng thứ 2."

Bạn mở file. Tab đầu tiên: tên khách hàng viết hoa lẫn thường, khoảng trắng thừa ở đầu ô, ngày tháng kẻ viết "15/01/2026" người viết "Jan 15, 2026." Tab thứ hai: cột doanh thu có ô ghi "N/A," ô ghi "—," ô để trống. Tab thứ ba: 200 dòng bị trùng lặp.

Bạn cuộn xuống. 47 tab còn lại cũng tệ không kém.

Đó không phải kịch bản kinh dị. Đó là thứ Hai bình thường của một Data Analyst.

🤔 Tại sao nó quan trọng?

Bạn có thể giỏi biểu đồ. Bạn có thể thuộc lòng mọi hàm Excel. Nhưng nếu dữ liệu đầu vào bẩn, mọi thứ bạn phân tích đều sai.

Hãy tưởng tượng bạn nấu một nồi phở. Rau quế tươi, bánh phở ngon, nước dùng hầm 12 tiếng. Nhưng bạn không rửa rau. Đất cát, sâu bọ, thuốc trừ sâu — tất cả vào nồi. Nồi phở có đẹp mấy cũng không ai dám ăn.

Data Cleaning chính là "rửa rau" trước khi nấu. Bạn không thể bỏ qua bước này và kỳ vọng kết quả phân tích đáng tin.

Theo IBM, dữ liệu bẩn gây thiệt hại khoảng $3.1 trillion mỗi năm chỉ riêng tại Mỹ. Harvard Business Review ước tính chỉ 3% dữ liệu doanh nghiệp đạt chuẩn chất lượng chấp nhận được. Tức 97% dữ liệu ngoài kia — bao gồm cả file Excel sếp vừa gửi bạn — có vấn đề ở mức nào đó.

Và Google Data Analytics Certificate thống kê rằng Data Analyst dành 60–80% thời gian dự án cho việc làm sạch dữ liệu. Không phải vẽ dashboard. Không phải trình bày insight. Mà là ngồi sửa khoảng trắng, gộp dòng trùng, chuẩn hóa format.

80% thời gian. Đi vào việc "rửa rau."

Nếu bạn không thành thạo kỹ năng này, bạn sẽ mắc kẹt mãi ở bước đầu tiên — và không bao giờ chạm được vào phân tích thực sự.

💀 Sai lầm chết người

Tháng 3/2025, một chuỗi cửa hàng tiện lợi tại TP.HCM quyết định mở thêm 5 chi nhánh mới. Team business intelligence được giao phân tích doanh thu theo khu vực để chọn vị trí.

Analyst nhận file doanh thu từ 120 cửa hàng. Cột "Quận/Huyện" — nơi quyết định mở ở đâu — trông như thế này:

Cửa hàngQuận/Huyện
#001Bình Thạnh
#002binh thanh
#003Bình thạnh
#004Q. Bình Thạnh
#005Binh Thanh

Năm cách viết cho cùng một quận.

Analyst không nhận ra. Tạo Pivot Table, kéo cột "Quận/Huyện" vào Rows. Kết quả: Bình Thạnh bị tách thành 5 dòng riêng biệt, mỗi dòng doanh thu nhỏ xíu. Quận Bình Thạnh — thực tế là khu vực doanh thu cao nhất — bị "chia năm xẻ bảy" trên báo cáo, trông như quận yếu kém.

Công ty mở chi nhánh ở quận khác. Doanh thu chi nhánh mới thấp hơn kỳ vọng 35%.

Garbage in, garbage out. Dữ liệu bẩn không chỉ cho kết quả sai — nó dẫn đến quyết định sai giá trị hàng tỷ đồng.

🧪 Ai đã làm đúng?

Airbnb — nền tảng cho thuê nhà với hơn 7 triệu listing trên toàn cầu.

Bạn có tưởng tượng được việc làm sạch dữ liệu của 1 triệu căn nhà không? Mỗi host tự nhập thông tin: tên căn hộ, mô tả, giá, địa chỉ. Người viết tiếng Anh, người viết tiếng Pháp, người viết tắt, người viết sai chính tả. Giá có người nhập theo đêm, có người nhập theo tuần, có người quên bỏ dấu phẩy nên $1,500 thành $1500 — hoặc tệ hơn, $15.00 thành $1500 vì nhầm dấu chấm.

Airbnb đầu tư cả team Data Quality Engineering chỉ để clean và standardize dữ liệu listing. Họ dùng fuzzy matching để gộp các địa chỉ gần giống nhau, text normalization để chuẩn hóa mô tả, outlier detection để flag những listing giá bất thường (giá $1/đêm ở Manhattan → chắc chắn lỗi).

Kết quả? Trải nghiệm tìm kiếm chính xác, không bị trùng listing, giá hiển thị đáng tin. Đó không phải phép màu — đó là Data Cleaning ở quy mô lớn.

Grab tại Đông Nam Á cũng là ví dụ kinh điển. Mỗi ngày, Grab xử lý hàng triệu chuyến xe với dữ liệu GPS — và GPS thì không bao giờ hoàn hảo. Tín hiệu bị nhiễu, tọa độ nhảy lung tung khi đi qua hầm, khi đứng giữa tòa nhà cao tầng. Grab phải clean GPS data liên tục — loại bỏ điểm nhiễu, smoothing lộ trình, chuẩn hóa địa chỉ — để tính cước chính xác. Sai 100 mét có thể sai 5.000 đồng. Nhân với 10 triệu chuyến/ngày = thiệt hại 50 tỷ đồng/ngày nếu không clean.

TikiShopee phải đối mặt với bài toán product deduplication. Cùng một sản phẩm "iPhone 15 Pro Max 256GB" nhưng 500 seller nhập 500 cách khác nhau: "Ip 15 Promax," "IPHONE 15 PRO MAX 256 GB," "Điện thoại Apple iPhone 15PM 256." Nếu không clean và gộp, khách hàng search không ra, hoặc so sánh giá bị sai. Đây là bài toán Data Cleaning triệu đô — và nó bắt đầu từ chính những hàm cơ bản mà bạn sẽ học hôm nay.

🎯 Vậy cụ thể là làm gì?

Dirty Data — 6 loại "rác" bạn sẽ gặp mỗi ngày

Dữ liệu bẩn (dirty data) không phải khái niệm trừu tượng. Nó có hình dáng cụ thể:

  1. Duplicate — Cùng một dòng xuất hiện 2–3 lần. Copy-paste nhầm, import trùng, hệ thống lỗi.
  2. Missing values — Ô trống, NULL, "N/A," "—." Người nhập quên, hệ thống không bắt buộc.
  3. Formatting errors — Ngày tháng 3 format khác nhau trong cùng cột. Số bị lưu dạng text.
  4. Typos & Inconsistency — "Hà Nội" vs "Ha Noi" vs "HÀ NỘI." Cùng thực thể, khác tên.
  5. Outlier — Đơn hàng 999,999,999 VNĐ trong bảng trung bình 500,000 VNĐ. Lỗi nhập hay thật?
  6. Structural issues — Dữ liệu nằm sai cột, header bị lặp giữa bảng, merged cells.

Mỗi loại cần cách xử lý khác nhau. Và Excel cung cấp cho bạn vũ khí cho từng loại.

Vũ khí làm sạch — TRIM, CLEAN, SUBSTITUTE, IFERROR

Bạn không cần Python để clean data cơ bản. Excel đã có sẵn bộ công cụ cực kỳ mạnh:

TRIM — Xóa khoảng trắng thừa ở đầu, cuối và giữa text. File từ 50 nhà phân phối? Chắc chắn có khoảng trắng thừa. =TRIM(" Nguyễn Văn An ") → "Nguyễn Văn An." Đơn giản nhưng cứu mạng. Không TRIM thì hai ô "An" và " An" — Excel coi là hai người khác nhau.

CLEAN — Xóa ký tự đặc biệt không in được (non-printable characters). Data copy từ web, từ ERP, từ database thường có ký tự ẩn mà mắt không thấy nhưng khiến hàm VLOOKUP không match. =CLEAN(A1) — một hàm, sạch ngay.

SUBSTITUTE — Thay thế text cụ thể. "TP.HCM" thành "Hồ Chí Minh"? =SUBSTITUTE(A1, "TP.HCM", "Hồ Chí Minh"). Chuẩn hóa toàn bộ cột trong 2 giây.

IFERROR — Bắt lỗi, thay bằng giá trị bạn muốn. Hàm VLOOKUP trả về #N/A? =IFERROR(VLOOKUP(...), "Không tìm thấy"). Không ai muốn thấy #N/A trên báo cáo gửi sếp.

Remove Duplicates — Tính năng có sẵn trong Data tab. Chọn bảng → Data → Remove Duplicates → chọn cột cần kiểm tra → xong. 200 dòng trùng biến mất trong 1 click.

Combo kinh điển: =TRIM(CLEAN(SUBSTITUTE(UPPER(A1), "TP.HCM", "HỒ CHÍ MINH"))). Một công thức xử lý khoảng trắng, ký tự ẩn, chuẩn hóa text, và viết hoa — cùng lúc.

Tidy Data — Nguyên tắc vàng của Hadley Wickham

Năm 2014, Hadley Wickham — nhà thống kê nổi tiếng, cha đẻ của tidyverse trong R — công bố bài báo "Tidy Data" trên Journal of Statistical Software. Ông đặt ra 3 quy tắc đơn giản nhưng thay đổi cách cả thế giới tổ chức dữ liệu:

  1. Mỗi biến (variable) là một cột — Đừng nhồi "Tháng 1," "Tháng 2," "Tháng 3" thành nhiều cột doanh thu. Tạo một cột "Tháng" và một cột "Doanh thu."
  2. Mỗi quan sát (observation) là một dòng — Một dòng = một sự kiện/giao dịch/đo lường. Đừng gộp 2 khách hàng vào 1 dòng.
  3. Mỗi bảng chứa một loại đơn vị quan sát — Bảng khách hàng riêng, bảng đơn hàng riêng. Đừng trộn lẫn.

Nghe đơn giản? Nhưng 80% file Excel trong thực tế vi phạm ít nhất 1 quy tắc. Bảng có merged cells? Vi phạm. Bảng có dòng tổng cộng xen giữa? Vi phạm. Bảng xếp tháng thành cột ngang? Vi phạm.

Tại sao Tidy Data quan trọng? Vì Pivot Table, hàm tổng hợp, và mọi công cụ phân tích đều yêu cầu dữ liệu ở dạng tidy mới hoạt động đúng. Dữ liệu không tidy → Pivot Table cho kết quả sai → bạn kết luận sai.

Hãy nghĩ Tidy Data như xếp đồ trong tủ quần áo. Áo sơ mi một ngăn, quần jean một ngăn, tất một ngăn. Khi cần tìm, bạn biết chính xác mở ngăn nào. Dữ liệu bẩn và không tidy giống như ném tất cả đồ vào tủ — rồi mỗi sáng mất 30 phút tìm một đôi tất.

Pivot Table — Vũ khí bí mật của dân Excel

Bạn có một bảng 10.000 dòng đơn hàng. Sếp hỏi: "Doanh thu theo khu vực, theo tháng, theo sản phẩm — cho tôi ngay."

Không có Pivot Table? Bạn viết SUMIFS, COUNTIFS, lồng IF, kéo công thức, mất 2 tiếng, sai 3 lần.

Có Pivot Table? Bạn kéo "Khu vực" vào Rows, "Tháng" vào Columns, "Doanh thu" vào Values. 30 giây. Xong.

Pivot Table không chỉ là tính năng Excel. Nó là cách tư duy phân tích đa chiều. Bạn nhìn dữ liệu từ nhiều góc — lật qua, lật lại, xoay ngang, xoay dọc — giống như cầm một viên rubik data lên rồi xoay từng mặt để hiểu toàn cảnh.

Pivot Table giống xếp đồ trong tủ theo loại — nhưng bạn có thể xếp lại theo màu, theo mùa, theo tần suất mặc, chỉ trong vài click. Tủ quần áo bình thường bạn phải dọn lại cả buổi. Pivot Table làm trong 5 giây.

Những tình huống Pivot Table tỏa sáng:

  • Tổng hợp đa chiều: Doanh thu theo vùng + theo tháng + theo nhóm sản phẩm
  • So sánh nhanh: Tháng này vs tháng trước, khu vực A vs khu vực B
  • Phát hiện pattern: Sản phẩm nào bán chạy vào mùa nào?
  • Drill down: Từ tổng quan quốc gia → xuống vùng → xuống tỉnh → xuống cửa hàng
  • Calculated Field: Tạo metric mới (lợi nhuận = doanh thu − chi phí) ngay trong Pivot

Nếu bạn chỉ học một tính năng duy nhất trong Excel — hãy học Pivot Table. Nó là kỹ năng xuất hiện trong 90% job description của Data Analyst tại Việt Nam.

🏪 Câu chuyện thực tế

Hằng, 28 tuổi, nhân viên kế toán tại một công ty phân phối hàng tiêu dùng ở Bình Dương.

Cuối quý 1/2026, sếp giao Hằng nhiệm vụ: "Tổng hợp doanh thu và công nợ từ 50 nhà phân phối, làm báo cáo cho ban giám đốc trình bày thứ 4."

Hằng nhận file. Đúng hơn là nhận 50 file — mỗi nhà phân phối gửi một file Excel riêng, format riêng, kiểu nhập riêng. Có file dùng ngày kiểu Việt (dd/mm/yyyy), có file kiểu Mỹ (mm/dd/yyyy), có file ghi ngày bằng chữ ("15 tháng 1"). Tên sản phẩm nhà phân phối A ghi "Sữa TH True Milk 1L," nhà phân phối B ghi "TH 1 lít," nhà phân phối C ghi "Sữa tươi TH 1000ml."

Hằng cũ — Hằng trước khi học Data Analytics — sẽ ngồi sửa tay. Copy từng file, paste vào file tổng, chỉnh format bằng tay, mắt dò từng dòng tìm trùng lặp. Mất 3 ngày. Sai sót? Chắc chắn có, nhưng mệt quá nên kệ.

Hằng mới — Hằng sau buổi 3 — làm khác.

Bước 1: Gộp data. Copy tất cả vào một sheet. Thêm cột "Nguồn" để biết dòng nào từ nhà phân phối nào.

Bước 2: Clean. Áp dụng combo TRIM(CLEAN(...)) cho toàn bộ cột text. Dùng SUBSTITUTE để chuẩn hóa tên sản phẩm: biến tất cả thành "TH True Milk 1L." Dùng hàm DATEVALUETEXT để đưa ngày về cùng format dd/mm/yyyy. Dùng IFERROR để xử lý ô lỗi #VALUE! do ngày sai format.

Bước 3: Remove Duplicates. Data → Remove Duplicates trên các cột khóa (mã đơn hàng, ngày, nhà phân phối). Kết quả: 312 dòng trùng bị loại — 8% tổng data. Nếu không loại, doanh thu sẽ bị tính thừa hơn 2 tỷ đồng.

Bước 4: Pivot Table. Hằng tạo Pivot Table: Rows = Nhà phân phối, Columns = Tháng, Values = SUM(Doanh thu). Thêm filter theo nhóm sản phẩm. Thêm Calculated Field cho tỷ lệ công nợ.

Kết quả: thay vì 50 tab hỗn loạn, ban giám đốc nhận được một bảng tổng hợp rõ ràng — doanh thu theo nhà phân phối, theo tháng, theo sản phẩm. Click vào bất kỳ ô nào để drill down xem chi tiết.

Sếp nhìn Pivot Table, kéo filter nhóm sản phẩm "Sữa chua" — phát hiện 3 nhà phân phối miền Tây có doanh thu sữa chua tăng 40% so với quý trước. "Mình nên tăng quota sữa chua cho miền Tây quý tới," sếp nói.

Một insight. Từ dữ liệu đã được rửa sạchxếp gọn đúng cách.

Hằng mất bao lâu? 4 tiếng — thay vì 3 ngày. Và zero sai sót — thay vì "sai nhưng mệt quá nên kệ."

💡 Bài học rút ra

🧹 Data Cleaning không phải việc "thấp cấp" — nó là việc quan trọng nhất. 80% thời gian DA nằm ở đây. Làm tốt bước này, mọi bước sau nhanh hơn, chính xác hơn, đỡ stress hơn.

🥬 Rửa rau trước khi nấu. Đừng bao giờ phân tích trên dữ liệu chưa clean. Dù deadline gấp, dù sếp hối. Garbage in, garbage out — không có ngoại lệ.

🧰 TRIM + CLEAN + SUBSTITUTE + IFERROR = Bộ tứ sống còn. Bốn hàm này xử lý được 80% lỗi dữ liệu cơ bản. Học thuộc, dùng mỗi ngày, thành phản xạ.

📐 Tidy Data là nền tảng. Mỗi biến một cột, mỗi quan sát một dòng. Đơn giản nhưng nếu bạn không tuân thủ, Pivot Table sẽ cho kết quả sai, biểu đồ sẽ méo, và bạn sẽ mất hàng giờ debug.

🔄 Pivot Table không chỉ là công cụ — nó là tư duy. Nhìn dữ liệu từ nhiều góc, xoay đi xoay lại, drill down từ tổng quan đến chi tiết. Đây là cách Data Analyst tìm insight — không phải nhìn chằm chằm vào 10.000 dòng.

🤓 Muốn tìm hiểu thêm?

🔗 Xem thêm Buổi 3

📘 Nội dung chính🧠 Case Study🏆 Tiêu chuẩn🛠 Workshop🎮 Mini Game