Trong Power BI, đôi khi bạn cần tách một cột dữ liệu thành nhiều cột. Ví dụ, bạn có thể muốn tách một cột địa chỉ thành các cột riêng biệt cho tên đường, thành phố. Hoặc có thể muốn tách một cột ngày thành các cột riêng biệt cho ngày, tháng và năm.
Power BI cung cấp một tính năng có tên Split Column để giúp bạn thực hiện việc này. Tính năng này cho phép bạn tách một cột dữ liệu thành nhiều cột dựa trên một dấu phân cách.
Các cách tách cột phổ biến
Tách cột theo dấu phân cách
Cách dùng: Vào Power Query -> Chọn cột bạn muốn tách -> chọn tab “Transform” -> chọn “Split Column” -> chọn “By Delimiter” -> Thông thường Power Query sẽ tự động phát hiện ra dấu phân cách, nhưng nếu bạn muốn sử dụng dấu phân cách khác để tách thì có thể chọn lại trong hộp chọn “Select or enter delimiter”
Ví dụ: Có tập dữ liệu gồm tên như thế này, bạn muốn tách họ, tên đệm, tên theo dấu phân cách là khoảng trắng
Bạn chọn cột “Họ và tên” làm như các bước vừa mô tả:
Sau khi chọn, Power Bi sẽ gợi ý ký tự phân cách là Space (Khoảng trắng) hoặc bạn có thể chọn ký tự phân cách khác
Đây là kết quả sau khi phân cách bằng Space
Tách cột theo số lượng ký tự
Cách dùng: Vào Power Query -> Chọn cột bạn muốn tách -> chọn tab “Transform” -> chọn “Split Column” -> chọn “By Number Of Characters” -> Nhập số lượng ký tự bạn muốn phân tách, ví dụ 2 thì PowerBI cứ sau 2 ký tự sẽ tách ra cột mới.
Ví dụ: Tương tự với tập dữ liệu ở trên, bạn nhập 2 vào ô số lượng ký tự:
Đây là kết quả, cứ sau 2 ký tự, thì sẽ tạo ra 1 cột mới
Tách cột theo vị trí ký tự
Cách dùng: Vào Power Query -> Chọn cột bạn muốn tách -> chọn tab “Transform” -> chọn “Split Column” -> chọn “By positions” -> Ở màn này PowerBi sẽ gợi ý khoảng vị trí bạn được phép nhập, bắt đầu từ 0 và kết thúc bằng ( Độ dài chuỗi – 1 ).
Ví dụ: Tương tự với tập dữ liệu trên, bạn nhập 2 vào ô vị trí.
Đây là kết quả, sẽ thay thế cột cũ bằng cột mới với vị trí ký tự bắt đầu từ vị trí 2 ( vị trí đầu tiên là 0 )
Tách cột dựa trên sự chuyển đổi giữa ký tự in hoa (upper case) và ký tự in thường (lower case)
Cách dùng: Vào Power Query -> Chọn cột bạn muốn tách -> chọn tab “Transform” -> chọn “Split Column” -> chọn “By UpperCase to LowerCase”
Ví dụ: Tương tự với tập dữ liệu trên, PowerBI sẽ phát hiện dựa trên ký tự ở vị trí đầu tiên là in hoa hay in thường, nếu là in hoa mà bạn chọn “By UpperCase to LowerCase” thì nó sẽ tách từ ký tự đầu tiên đến ký tự in thường gần nhất, còn nếu là in thường thì sẽ xảy ra lỗi vì options này chỉ dùng cho trường hợp ký tự đầu tiên là in hoa. Như phân tách theo họ và tên thì chữ “g” là ký tự thường đầu tiên gần nhất
Tương tự với trường hợp “By LowerCase to UpperCase”: Nếu ký tự đầu tiên là in thường thì PowerBI sẽ tách từ ký tự đầu tiên đến ký tự in hoa gần nhất, nếu ký tự đầu tiên là in hoa thì sẽ xảy ra lỗi vì options này chỉ dùng cho trường hợp ký tự đầu tiên là in thường.
Tách cột dựa trên các ký tự là chữ số ( digit) và không phải chữ số ( non-digit)
Cách dùng: Vào Power Query -> Chọn cột bạn muốn tách -> chọn tab “Transform” -> chọn “Split Column” -> chọn “By Digit to Non-digit”.
Ví dụ: Tương tự với tập dữ liệu trên, PowerBI sẽ phát hiện dựa trên ký tự ở vị trí đầu tiên là số hay không, nếu là số thì nó sẽ tách từ ký tự đầu tiên đến ký tự chữ gần nhất, nếu ký tự đầu tiên không phải số thì sẽ lỗi. Giả sử mình muốn phân tách theo cột “Lớp” có giá trị như “9ABC” thì sẽ phân tách thành “9” và “ABC”
Tương tự với “By Non-Digit to Digit”, PowerBI sẽ phát hiện dựa trên ký tự ở vị trí đầu tiên là số hay không, nếu không phải là số thì nó sẽ tách từ ký tự đầu tiên đến ký tự số gần nhất, nếu ký tự đầu tiên là số thì sẽ lỗi.
Lưu ý khi tách cột
Ngoài những lưu ý mình có note trong từng phương pháp thì bạn cần lưu ý thêm:
- Kiểm tra trước Kết Quả: Luôn luôn kiểm tra kết quả trước khi áp dụng bất kỳ phương pháp tách cột nào. Điều này giúp bạn đảm bảo rằng cách tách cột của bạn phản ánh đúng yêu cầu và dữ liệu của bạn.
- Xử Lý Giá Trị Rỗng: Nếu cột của bạn có giá trị rỗng, hãy xác định xem bạn muốn giữ giá trị rỗng đó hay bạn muốn xử lý nó theo cách nào đó (ví dụ: điền giá trị mặc định).
Kết luận
Bài viết trên SmartData đã giới thiệu với các bạn thao tác tách cột bằng Split Column 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: