Khi bạn làm việc với dữ liệu, đôi khi bạn cần tạo cột mới dựa trên một số tiêu chí. Việc này giúp bạn phân loại dữ liệu, tính toán giá trị mới hoặc thực hiện bất kỳ thay đổi nào dựa trên logic cụ thể. Conditional Column trong power query là công cụ giúp bạn thực hiện điều này một cách dễ dàng và hiệu quả.
Cú pháp của Conditional Column
= Table.AddColumn(Source, "NewColumn", each if [Condition1] then [Value1] else if [Condition2] then [Value2] else [DefaultValue] )
Tham số
- Source : Tên bảng đang thao tác
- “NewColumn” : Tên cột mới thêm
- [Condition1] : là điều kiện đầu tiên, nếu điều kiện này đúng thì giá trị [Value1] sẽ được gán cho cột mới
- [Condition2] : là điều kiện thứ 2, nếu điều kiện này đúng thì [Value2] sẽ được gán cho cột mới
- [DefaultValue] : Giá trị mặc định mà cột mới sẽ nhận nếu không có điều kiện nào đúng.
Lưu ý với cú pháp lệnh Conditional Column trên thì không giới hạn số điều kiện IF-ELSE
Cách tạo điều kiện với Conditional Column
May mắn là các bạn không cần nhớ cả công thức trên mà Power Query đã hỗ trợ chúng ta phần này. Để tạo điều kiện này, bạn vào Power Query -> tab “Add Column” -> chọn “Conditional Column” . Lúc này màn hình sẽ hiển thị các ô cần nhập. Với ô “New column name”, bạn sẽ nhập tên cột mới cần thêm. Ô tiếp theo là “Column name” bạn chọn cột dữ liệu muốn so sánh để lấy dữ liệu. Kế tiếp là “Operator” là toán tử bạn muốn so sánh, có thể là bằng, lớn hơn, nhỏ hơn, chứa,… Tiếp theo là “Value” là giá trị so sánh và “Outout” là giá trị cần điền nếu điều kiện IF thỏa mãn. Bạn có thể thêm điều kiện khác bằng cách nhấn “Add clause”. Và ô cuối cùng là “Else” là giá trị mặc định nếu không thỏa mãn điều kiện nào
Ví dụ áp dụng Conditional Column
Giả sử ta có bảng dữ liệu gồm “Sản phẩm” và “Số lượng hiện có”.
Bây giờ bạn muốn thêm 1 cột trạng thái của mặt hàng là có sẵn hàng hay hết hàng để dễ theo dõi hơn thì có thể sử dụng “Conditional Column” bằng cách tạo ra cột mới với điều kiện “Số lượng còn lại” bằng 0 thì trạng thái “Hết hàng” và số lượng còn lại lớn hơn 0 thì trạng thái là “Có sẵn”
Sau khi có dữ liệu, ta điền “New column name” là “Trạng thái” , “Column Name” chọn cột “Số lượng hiện có”, “Operator” là “is greater than” , “Value” là 0, “Output” là có sẵn. Và ô giá trị mặc định “Else” là “Hết hàng”.
Hoặc bạn có thể không dùng ô giá trị mặc định mà thêm 1 điều kiện nữa là “Số lượng hiện có” bằng 0 thì “Output” là “Hết hàng” bằng cách điền thêm như sau:
Cả 2 cách trên đều cho ra kết quả chính xác như sau:
Kết luận
Bài viết trên SmartData đã giới thiệu với các bạn cách sử dụng Conditional Column để thêm cột mới trong Power Query. Nếu bạn thấy bài viết hay và hữu ích, bạn có thể tham gia các kênh sau của SmartData để nhận được nhiều thông tin hơn nữa: