https://zing4u.top/
Sử dụng hàm CALCULATE trong Power BI
307

Hàm CALCULATE được cho là một trong những hàm DAX quan trọng nhất (và phổ biến nhất) của Power BI. Nó rất dễ sử dụng và cực kỳ linh hoạt, cho phép bạn mở rộng các phân tích dữ liệu và phát triển các báo cáo Power BI thậm chí còn có giá trị hơn.

Hướng dẫn này tập trung vào việc tìm hiểu hàm CALCULATE là gì, cách sử dụng và các giả định rằng bạn đã quen thuộc với các kiến thức cơ bản về Power BI và DAX.

 

Hàm CALCULATE là gì?

Theo tài liệu Microsoft Power BI, hàm CALCULATE tạo thành một phần của danh mục hàm bộ lọc và được định nghĩa là “đánh giá một biểu thức trong ngữ cảnh bộ lọc đã sửa đổi.” Một biểu thức về cơ bản là một thước đo và bao gồm các hàm như SUM, AVERAGE và COUNT. Biểu thức này được đánh giá trong ngữ cảnh của một hoặc nhiều bộ lọc.

Bộ lọc cũng có thể được áp dụng cho báo cáo Power BI chỉ đơn giản bằng cách thêm slicer mà không cần tạo thước đo bằng cách sử dụng hàm CALCULATE. Tuy nhiên, có nhiều trường hợp sử dụng hàm CALCULATE sẽ phù hợp hơn. Nó đặc biệt hữu ích khi sử dụng như một thành phần của một hàm khác. Chúng ta sẽ xem cách này hoạt động như thế nào trong ví dụ dưới đây để tính toán tỷ lệ phần trăm của tổng số.

 

Sử dụng DAX để tính những cú pháp cơ bản

Cú pháp DAX cơ bản của hàm CALCULATE là:

CALCULATE( <expression> [, <filter1> [, <filter2> [, …]]])

Hàm CALCULATE được tạo thành từ 2 thành phần chính:

Có 3 loại bộ lọc có thể được sử dụng trong hàm CALCULATE:

Bạn có thể thêm nhiều bộ lọc vào thành phần bộ lọc của hàm CALCULATE bằng cách phân tách từng bộ lọc bằng dấu phẩy. Tất cả các bộ lọc được đánh giá cùng nhau và thứ tự của chúng không quan trọng.

Bạn có thể kiểm soát cách bộ lọc được đánh giá bằng cách sử dụng các toán tử logic. Nếu bạn muốn tất cả các điều kiện được đánh giá là TRUE thì bạn có thể sử dụng AND (&&). Đây cũng là mặc định của các bộ lọc như đã đề cập ở trên. Ngoài ra, với toán tử OR (||), ít nhất một điều kiện phải được đánh giá là TRUE để trả về một kết quả.

 

Cách sử dụng hàm CALCULATE

Để sử dụng CALCULATE, chỉ cần thêm measure vào bảng của bạn. Bạn có thể thực hiện việc này bằng cách điều hướng đến tab Modeling trong Ribbon và chọn ‘New Measure’.

Dưới đây là một ví dụ đơn giản về hàm CALCULATE sử dụng SUM để tìm tổng doanh thu và lọc cho Country = United Kingdom.

UK Revenue = CALCULATE(SUM(‘Online Retail'[Revenue]),

‘Online Retail'[Country] = “United Kingdom”)

Chúng ta có thể thấy rằng measure UK Revenue chỉ đơn giản là áp dụng bộ lọc cho Country ngoài bộ lọc đã có trong bảng cho Month. Sử dụng hàm CALCULATE theo cách này cho phép chúng ta kiểm soát chi tiết hơn đối với loại thông tin được hiển thị trong hình ảnh của chúng ta.

Một điều quan trọng cần ghi nhớ khi tạo các measure là tuân theo các phương pháp lập mô hình dữ liệu tốt, cụ thể là về tốc độ và tối ưu hóa các truy vấn của bạn. Do đó, một số cách sử dụng hàm CALCULATE có thể sẽ nhanh hơn và phù hợp hơn so với các cách sử dụng khác.

Ví dụ, tài liệu của Microsoft khuyên bạn nên tránh sử dụng hàm FILTER làm đối số cho các hàm khác (chẳng hạn như trong hàm CALCULATE). Thay vào đó, tốt hơn bạn nên sử dụng các biểu thức boolean vì chúng được tối ưu hóa rõ ràng cho mục đích này.

Trong ví dụ trên, chúng ta đã sử dụng biểu thức boolean để xác định bộ lọc cho Country = United Kingdom. Đây là cách tiếp cận nhanh hơn và tối ưu hơn. Mặt khác, đây là một ví dụ về hàm FILTER, chúng ta sẽ nhận được cùng một kết quả nhưng tính toán chậm hơn:

UK Revenue = CALCULATE(SUM(‘Online Retail'[Revenue]),

FILTER(‘Online Retail’,

‘Online Retail'[Country] = “United Kingdom”)

 

Ví dụ về hàm CALCULATE

Bằng cách sử dụng tập dữ liệu thương mại điện tử thực tế, chúng ta sẽ khám phá một số cách mà hàm CALCULATE có thể được sử dụng để giải quyết các vấn đề kinh doanh. Để làm theo hướng dẫn này, bạn có thể truy cập và tải tập dữ liệu E-Commerce Data.

Tập dữ liệu này chứa thông tin về mỗi lần mua hàng mà khách hàng thực hiện: quốc gia mà khách hàng đã mua, mô tả sản phẩm, ngày và giờ mua, số lượng và giá của mỗi sản phẩm đã mua.

Chúng ta sẽ trả lời được các câu hỏi sau với sự trợ giúp của hàm CALCULATE:

 

Tổng doanh thu hàng tháng ở UK so với tất cả các quốc gia khác như thế nào?

Để trả lời câu hỏi này, chúng ta sẽ cần tạo hai measure bằng cách sử dụng hàm CALCULATE. Đầu tiên, chúng ta sử dụng một bộ lọc boolean đơn giản để tạo một measure trả về tổng doanh thu (sử dụng hàm SUM) ở UK:

UK Revenue = CALCULATE(SUM(‘Online Retail'[Revenue]),

‘Online Retail'[Country] = “United Kingdom”)

Tiếp theo, chúng ta tạo một measure tương tự, nhưng lần này sử dụng chức năng FILTER. Biểu thức bộ lọc này chạy qua từng hàng của cột Country và trả về một bảng chứa các hàng phù hợp với điều kiện bộ lọc. Ở đây cần có hàm FILTER vì chúng ta không thể trả về giá trị TRUE hoặc FALSE đơn giản từ bộ lọc. Thay vào đó, chúng ta nhận được một bảng có nhiều giá trị.

Non-UK Revenue = CALCULATE(SUM(‘Online Retail'[Revenue]),

FILTER(‘Online Retail’,

‘Online Retail'[Country] <>”United Kingdom”)

Do đó, chúng ta có thể thấy rằng UK chiếm phần lớn doanh thu cho cửa hàng thương mại điện tử so với tất cả các quốc gia khác.

 

Tổng doanh thu từ UK chiếm bao nhiêu phần trăm?

Đây là một dạng câu hỏi rất phổ biến mà các nhà phát triển và người dùng Power BI phải đối mặt và nó là một trường hợp hoàn hảo để áp dụng hàm CALCULATE.

Để tìm phần trăm của tổng số, trước tiên cần trả về tổng số mà không bị ảnh hưởng bởi các ngữ cảnh bộ lọc khác trong báo cáo. Để đạt được điều này, chúng ta sử dụng một công cụ sửa đổi bộ lọc được gọi là hàm ALL. Sử dụng hàm này, chúng ta chỉ định cột nào muốn tính toán bỏ qua hoàn toàn bất kỳ bộ lọc nào.

Trong ví dụ này, chúng ta đang tìm kiếm phần trăm tổng doanh thu ở UK. Điều này có nghĩa là tính toán sẽ bỏ qua bất kỳ bộ lọc nào trong cột Country.

Total Revenue = CALCULATE(SUM(‘Online Retail'[Revenue]),

ALL(‘Online Retail'[Country]))

Điều này có liên quan vì CALCULATE có thể được thực hiện từ bên trong ngữ cảnh bộ lọc đã lọc Product[Color]. Trong trường hợp đó, sự hiện diện của ALL có nghĩa là bộ lọc bên ngoài trên Product[Color] bị bỏ qua và được thay thế bằng bộ lọc mới do CALCULATE đưa ra. Điều này là hiển nhiên nếu thay vì cắt theo Brand, chúng ta cắt theo Color trong ma trận.

Khi đã biết tổng doanh thu của mình, chúng ta có thể xây dựng một measure để hiển thị phần trăm tổng doanh thu. Tuy nhiên, vì chúng ta đặc biệt quan tâm đến UK nên sẽ sử dụng hàm CALCULATE một lần nữa, nhưng lần này sẽ sử dụng một bộ lọc boolean đơn giản.

UK % of Revenue = CALCULATE(SUM(‘Online Retail'[Revenue])/[Total Revenue],

‘Online Retail'[Country] = “United Kingdom”)

Bây giờ chúng ta có thể thấy rằng UK chiếm 84% tổng doanh thu cho cửa hàng thương mại điện tử này.

 

Doanh thu tích lũy hàng ngày là bao nhiêu?

Doanh thu tích lũy có thể cung cấp một số thông tin chi tiết về xu hướng doanh thu. Bằng cách vẽ biểu đồ doanh thu tích lũy này trên biểu đồ, chúng ta cũng có thể trực quan xem liệu doanh thu có tăng với tốc độ nhanh hơn hay không theo thời gian.

Để trả lời câu hỏi này, chúng ta phải tạo một measure bằng cách sử dụng hàm CALCULATE cũng như các hàm lọc sau: ALLSELECTED, FILTER và một đánh giá bằng cách sử dụng hàm MAX.

Cumulative Revenue = CALCULATE(SUM(‘Online Retail'[Revenue]),

FILTER( ALLSELECTED(‘Online Retail'[InvoiceDate]),

‘Online Retail'[InvoiceDate] <= MAX(‘Online Retail'[InvoiceDate])))

Hãy xem qua lý do tại sao những bộ lọc này lại quan trọng ở đây:

 

Nhận xét

Trong hướng dẫn này, chúng ta đã thảo luận về hàm CALCULATE trong Power BI và cách sử dụng nó. Chúng ta cũng đã áp dụng hàm CALCULATE cho tập dữ liệu thương mại điện tử và sử dụng nó để trả lời một số câu hỏi kinh doanh chính.

CALCULATE là một trong những chức năng hữu ích nhất trong Power BI và bạn có thể sẽ cần sử dụng nó thường xuyên khi xây dựng báo cáo và tạo thông tin chi tiết sâu hơn về dữ liệu của mình.

Hy vọng rằng, hướng dẫn này không chỉ giúp bạn hiểu được cú pháp cơ bản của CALCULATE mà còn về cách nó liên quan đến việc giải quyết các vấn đề kinh doanh thực tế với tư cách là một nhà phân tích dữ liệu Power BI.

Từ Khóa:
Cùng chuyên mục
Cách cắt file MP3 trên máy tính và online đơn giản, nhanh chóng Cách cắt file MP3 trên máy tính và online đơn giản, nhanh chóng
Cách đánh số trang trong word (từ đầu hoặc trang bất kỳ) Cách đánh số trang trong word (từ đầu hoặc trang bất kỳ)
Cách thêm mối quan hệ trên Facebook Cách thêm mối quan hệ trên Facebook
Cách bật chế độ chuyên nghiệp trên Facebook Cách bật chế độ chuyên nghiệp trên Facebook
[2025] Cách bật theo dõi trên Facebook [2025] Cách bật theo dõi trên Facebook
DMCA.com Protection Status tai nhac chuong