Dương Mạnh Quân
Dương Mạnh Quân
Thảo luận 0 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 385 lượt xem

Unpivot Column là gì? Cách tạo Unpivot Column trong Power Query

Nov 18 2021

Unpivot Column là công cụ "xoay bảng" được sử dụng phổ biến trong Power Query Editor. Bạn đã từng dùng Unpivot Column chưa? Hãy cùng tìm hiểu về Unpivot Column và cách sử dụng nó nhé.

Khi nhắc tới các công cụ giúp "xoay bảng" trong Power Query Editor, chúng ta thường nhắc tới ba công cụ chính là Transpose, Pivot Columns và Unpivot Columns. Trong đó Unpivot Column lại là công cụ quan trọng và được sử dụng nhiều nhất. Hãy cùng Gitiho tìm hiểu về chức năng Unpivot Column để xem tại sao lại như vậy nhé.

Unpivot Column là gì và tầm quan trọng của nó

Khái niệm Unpivot Column

Hãy xem ví dụ dưới đây để biết Unpivot Column là gì, và khi nào bạn cần tới chức năng này:

Ví dụ bạn có 1 bảng tính doanh thu như sau:


Trong đó dòng tiêu đề đang chứa thông tin về các tháng. Tại mỗi cột Tháng sẽ là doanh thu của từng chỉ tiêu trong tháng đó.

Nhưng trong cấu trúc của 1 bảng dữ liệu tiêu chuẩn, chúng ta cần 1 bảng dữ liệu theo chiều dọc. Nếu có thêm các tháng thì dữ liệu chỉ làm tăng thêm về dòng chứ không phải tăng thêm về cột. Việc tăng thêm về cột sẽ làm phát sinh thêm các trường dữ liệu (fields), điều đó gây khó khăn cho việc tổng hợp dữ liệu từ bảng tính.

Để xoay bảng về chiều dọc, bạn cần:

  • Đưa các nội dung ở dòng tiêu đề (header) xuống thành 1 cột (từ chiều ngang thành chiều dọc). Trong đó chỉ xoay các cột Tháng mà không xoay cột Chỉ tiêu
  • Với mỗi dòng dữ liệu sẽ xoay tương ứng theo dòng tiêu đề
  • Các chỉ tiêu (cột không được xoay) sẽ lặp lại tương ứng theo từng dòng mới sinh ra bởi việc xoay dòng tiêu đề

Bạn có thể nhìn hình bên dưới để hình dung rõ hơn:


Việc này chính là Unpivot Column. Bạn chỉ cần xoay 1 số cột nhất định trong bảng chứ không phải xoay toàn bộ các cột trong bảng (xoay toàn bộ các cột là Transpose).

Tầm quan trọng của Unpivot Column trong Power Query

Trong thực tế chúng ta rất hay gặp các bảng dữ liệu được tổ chức theo chiều ngang, Bởi một số nguyên nhân như:

Thói quen tổ chức dạng bảng ngang để tận dụng ưu điểm về nhập dữ liệu nhanh, đơn giản.

Bảng dữ liệu được trích xuất từ phần mềm hoặc trang web (hoặc do người khác gửi) đã có sẵn cách tổ chức như vậy, không tự ý thay đổi được.

Dạng bảng này có nhược điểm là:

Khó tính toán bằng các hàm, công thức do đặc trưng của việc tính toán trong dạng Table là tính toán theo cả cột (theo field - trường dữ liệu) => bị hạn chế về tính toán

Khó quản lý và giới hạn bảng: do thêm cột theo chiều ngang sẽ làm tăng thêm các Fields => dễ bị bỏ sót dữ liệu khi tính toán, báo cáo

Dòng tiêu đề chứa thông tin quan trọng (tháng, năm). Thông tin này thường là yếu tố quan trọng được sử dụng trong mô hình dữ liệu, trong các hàm phân tích dữ liệu theo thời gian (Time Intelligence) => Khi thông tin nằm ở dòng tiêu đề sẽ không sử dụng được. Cần đưa thông tin này xuống thành các dòng nội dung theo các cột Tháng, Năm riêng biệt.

Do đó chúng ta cần sử dụng Power Query để tự động hóa việc xoay bảng dữ liệu từ chiều ngang sang chiều dọc. Mục đích xoay bảng lại thường theo dạng Unpivot nhiều hơn là Transpose, bởi trong bảng tính vừa có cột cần cố định chiều dọc, vừa có cột cần xoay chiều ngang, bảng thường phát sinh tăng thêm về cột và phần tăng thêm này cần được xoay lại. Một điều đặc biệt nữa là những công việc này lại thường xuyên gặp phải trong quá trình xử lý dữ liệu của Power Query Editor. Do đó bạn cần nắm vững được nguyên tắc hoạt động của Unpivot Columns để nâng cao kỹ năng xử lý cấu trúc dữ liệu.

Cách thực hiện Unpivot Columns

Tại chức năng Unpivot Column bạn có thể thực hiện như sau:


  • Bước 1: chọn một (hoặc một số cột) mà bạn muốn cố định, không xoay.
  • Bước 2: mở chức năng Unpivot columns, sau đó chọn mục Unpivot Other Columns. Tức là xoay các cột khác ngoại trừ cột đang chọn ở bước 1

Với phương pháp này, các cột cố định thường đặt ở phía bên trái, các cột cần Unpivot sẽ ở phía bên phải. Khi bảng dữ liệu gốc phát sinh thêm các cột mới bên phải thì những cột mới thêm cũng sẽ được tự động Unpivot mà không cần làm lại thao tác.

Còn với lựa chọn Unpivot Columns, bạn sẽ cần chỉ định cột nào sẽ là cột cần xoay. Cách này thường áp dụng khi bạn chỉ muốn xoay một số cột nhất định, cụ thể trong bảng. Nếu bảng dữ liệu gốc tăng thêm cột thì những cột mới thêm sẽ không bị Unpivot.

Kết luận

Trên đây là những kiến thức cần biết về Unpivot Column trong Power Query. Các bạn có thể học thêm kiến thức chuyên sâu về Power Query với hệ thống bài giảng cực hay trong khóa học dưới đây:

Power Pivot, Power Query - Biến Excel thành công cụ Phân tích dữ liệu chuyên sâu

Khóa học được xây dựng theo lộ trình từ cơ bản đến nâng cao, lý thuyết đan xen với thực hành giúp bạn dễ dàng nắm chắc kiến thức và thành thạo các thao tác thực hành. Trong quá trình học, giảng viên sẽ hỗ trợ các bạn nhiệt tình 24/7. Nếu bạn có vấn đề chưa hiểu hay gặp vướng mắc trong lúc thực hành thì hãy để lại câu hỏi trong mục Hỏi - Đáp. Chuyên gia của Gitiho sẽ phản hồi bạn trong vòng 24h nhé.

Gitiho không giới hạn thời gian hay số lượt học nên bạn có thể học mọi lúc, mọi nơi trên cả website và app của Gitiho trên thiết bị di dộng. Chúc các bạn học tập hiệu quả.

Cùng tham gia cộng đồng hỏi đáp về chủ đề Excel Nâng Cao

Thảo luận 0 câu trả lời
Lượt xem 385 lượt xem
Vỗ tay vỗ tay

0 Bình luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội