Dữ liệu (data) nắm vai trò tối quan trọng trong sản phẩn cuối cùng của bạn, và Power BI là trợ thủ đắc lực trong quá trình ấy. Trong bài viết lần này, mình sẽ giới thiệu cho các bạn cách để thay đổi kiểu dữ liệu trong Power BI, mà mình tin rằng sẽ vô cùng hữu ích.
Các nội dung chính
Tại sao phải thay đổi kiểu dữ liệu?
Khi bạn import bảng từ bất kỳ nguồn dữ liệu nào, Power BI Desktop sẽ tự động quét 1000 hàng đầu tiên (mặc định) và phát hiện loại dữ liệu trong các cột. Tuy nhiên trong một vài trường hợp, Power BI Desktop sẽ không phát hiện đúng loại dữ liệu. Khi đó, bạn sẽ gặp phải các vấn đề khi thể hiện dữ liệu.
Có nhiều khả năng bị lỗi hơn khi xử lý các tệp phẳng (flat file), chẳng hạn như file CSV và file Excel (.XLSX) vì dữ liệu được nhập tay vào các worksheet. Ngược lại, trong cơ sở dữ liệu, kiểu dữ liệu được xác định trước khi các table hoặc view được tạo.
Phương pháp hay nhất là đánh giá các kiểu dữ liệu cột trong Power Query Editor trước khi bạn tải dữ liệu vào mô hình dữ liệu Power BI. Nếu bạn thấy rằng kiểu dữ liệu không chính xác, bạn có thể thay đổi nó. Bạn cũng có thể áp dụng một định dạng cho tất cả giá trị trong một cột và thay đổi tính toán mặc định cho cột đó.
Xem hình dưới đây. Bạn đang đánh giá cột OrderDate. Đúng ra cột này phải chứa dữ liệu dạng ngày, nhưng Power BI Desktop đã đặt sai kiểu dữ liệu cột thành Text. Để có thể làm báo cáo về cột này, bạn cần thay đổi từ Text thành Date.

Hệ lụy khi kiểu dữ liệu cột không chính xác
Kiểu dữ liệu không chính xác khiến bạn không thể tạo ra một vài phép tính nhất định, không thể tạo ra cấu trúc phân cấp (hierarchies) hoặc tạo mối quan hệ thích hợp với các bảng khác. Ví dụ: nếu bạn cố gắng tính Quantity of Orders YTD từ cột OrderDate mà không đổi kiểu dữ liệu cột sang Date, bạn sẽ nhận được lỗi sau đây:
Quantity of Orders YTD = TOTALYTD(SUM('Sales'[OrderQty]), 'Sales'[OrderDate])

Một vấn đề khác với việc áp dụng loại dữ liệu không chính xác trên trường Date là không thể tạo cấu trúc phân cấp cho ngày tháng – cho phép bạn phân tích dữ liệu của mình theo năm, theo tháng hoặc tuần. Ảnh chụp màn hình sau đây cho thấy rằng trường SalesDate không được nhận dạng kiểu dữ liệu là Date và sẽ chỉ được trình bày dưới dạng list trong Table visual như hình bên dưới. Tuy nhiên, cách tốt nhất là sử dụng Date table và tắt date/ time tự động để loại bỏ hệ thống phân cấp được tạo tự động. Để biết thêm thông tin về quy trình này, hãy xem tài liệu về Auto generated data type.

Thay đổi kiểu dữ liệu cột
Bạn có thể thay đổi kiểu dữ liệu của cột ở hai nơi: trong Power Query Editor và trong mục Report ở Power BI Desktop bằng cách sử dụng các công cụ cột. Tốt nhất là thay đổi kiểu dữ liệu trong Power Query Editor trước khi bạn tải dữ liệu.
Các kiểu dữ liệu trong Power BI
- Number: bao gồm 3 kiểu gồm Decimal Number, Fixed Decimal Number và Whole Number
- Date/Time: bao gồm Date/Time, Date, Time, Duration
- Text
- True/False
- Blank/Null
- Binary
Bạn có thể đọc thêm về các kiểu dữ liệu trong Power BI Desktop tại Data type in Power BI Desktop.
Thay đổi kiểu dữ liệu cột trong Power Query Editor
Trong Power Query Editor, bạn có thể thay đổi kiểu dữ liệu cột theo hai cách. Một cách là chọn cột, chọn Data Type trong tab Transform, sau đó chọn loại dữ liệu chính xác từ danh sách.

Một phương pháp khác là chọn biểu tượng kiểu dữ liệu bên cạnh tiêu đề cột và sau đó chọn kiểu dữ liệu từ danh sách.

Như với bất kỳ thay đổi nào khác mà bạn thực hiện trong Power Query Editor, thay đổi bạn thực hiện đối với kiểu dữ liệu cột cũng được lưu lại. Bước này được gọi là Changed Type và nó sẽ được lặp lại mỗi khi dữ liệu được làm mới.
Sau khi bạn đã hoàn thành tất cả các bước để làm sạch và chuyển đổi dữ liệu của mình, hãy chọn Close & Apply để đóng Power Query Editor và áp dụng các thay đổi cho mô hình dữ liệu của bạn. Ở giai đoạn này, dữ liệu của bạn phải ở trạng thái hoàn hảo để phân tích và tạo báo cáo.