Derecelendirmeleri hesaplama

Tamamlandı

RANKX DAX işlevi, dereceleri hesaplamak için kullanabileceğiniz özel bir yineleyici işlevidir. Söz dizimi şu şekildedir:

RANKX(<table>, <expression>[, <value>[, <order>[, <ties>]]])

Tüm yineleyici işlevler gibi bir tablo ve ifade geçirmeniz gerekir. İsteğe bağlı olarak, bir sıralama değeri geçirebilir, sıra yönünü ayarlayabilir veya değerler bağlı olduğunda derecelerin nasıl işleneceğini belirleyebilirsiniz.

Sıralama yönü

Sıralama yönü, artan veya azalan düzende olur. Gelir değerleri gibi uygun bir sıralama yaparken, en yüksek gelirin ilk sırada yer alabilmesi için azalan sırayı kullanmanız olasıdır. Müşteri şikayetleri gibi olumsuz bir şeyi derecelendirdiğinizde, en düşük şikayet sayısının ilk sırada yer almaları için artan düzen kullanabilirsiniz. Bir sıra bağımsız değişkenini geçirmediğinizde işlev 0 (sıfır) (azalan düzen için) kullanır.

Eşdeğerleri yönetme

Eşdeğerleri yönetmek için derecelendirme değerlerini atlayabilir veya yoğun derecelendirme kullanarak eşdeğer düzeyden bir sonraki derecelendirme değerinin kullanılmasını sağlayabilirsiniz. Bir bağ bağımsız değişkenini geçirmediğinizde işlev Skip işlevini kullanır. Bu ünitenin devamında her bağlama bağımsız değişkeninin bir örneğiyle çalışma fırsatınız olacak.

Derecelendirme ölçüleri oluşturma

Aşağıdaki ölçüyü Product tablosuna ekleyin:

Product Quantity Rank =
RANKX(
    ALL('Product'[Product]),
    [Quantity]
)

Product Quantity Rank ölçüsünü raporun Sayfa 2 bölümünde yer alan tablo görseline ekleyin. Tablo görseli bisikletleri gruplar ve ürünlerin azalan miktara göre sıralandığı miktar değerlerini görüntüler.

İşlev, RANKX DAX işlevi tarafından ALL döndürülen bir tablo üzerinde yinelenir. ALL İşlev, bir model tablosundaki tüm satırları veya bir veya daha fazla sütundaki değerleri döndürmek için kullanılır ve tüm filtreleri yoksayar. Bu nedenle, bu durumda, Product tablosundaki tüm Product sütun değerlerinden oluşan bir tablo döndürür. Tablo görseli RANKX ürüne ALL göre gruplandırılacağından ( Product tablosundaki bir filtredir) işlevi işlevini kullanmalıdır.

Tablo görselinde iki ürünün onuncu sırada yer aldığını ve bir sonraki ürünün derecesinin 12 olduğunu görebilirsiniz. Bu görsel, Atlandı eşdeğerler bağımsız değişkenine örnek olarak verilebilir.

Bike Sales adlı tablo görselini gösteren görüntü. Üç sütun var: Product, Quantity ve Product Quantity Rank. Tablo satırları Quantity sütununa göre azalan düzende sıralanmış. İki ürün 10. sırada, takip eden ürün ise 12. sırada.

Bir sonraki göreviniz, aşağıdaki mantığı girerek Product Quantity Rank ölçü tanımını yoğun derecelendirmeyi kullanacak şekilde değiştirmek olacak:

Product Quantity Rank =
RANKX(
    ALL('Product'[Product]),
    [Quantity],
    ,
    ,
    DENSE
)

Tablo görselinde atlanmış derece olmadığına dikkat edin. Onuncu sıradaki iki eşdeğer üründen sonra gelen ürün 11. sırada.

Bike Sales adlı tablo görselini gösteren görüntü. Üç sütun var: Product, Quantity ve Product Quantity Rank. Tablo satırları Quantity sütununa göre azalan düzende sıralanmış. İki ürün 10. sırayı paylaşıyor, sonraki ürün is 11. sırada.

Product Quantity Rank için tablonun görsel toplamının bir (1) olduğuna dikkat edin. Bunun nedeni tüm ürünlerinin toplamının derecelendirilmiş olmasıdır.

Product Quantity Rank toplamının 1 olduğunu gösteren görüntü.

Ürün toplamını derecelendirmek uygun olmadığından aşağıdaki mantığı kullanarak ölçü tanımını tak bir ürün filtrelenmediği sürece BLANK döndürecek şekilde değiştireceksiniz:

Product Quantity Rank =
IF(
    HASONEVALUE('Product'[Product]),
    RANKX(
        ALL('Product'[Product]),
        [Quantity],
        ,
        ,
        DENSE
    )
)

Product Quantity Rank toplamının BLANK olduğunu gösteren görüntü.

Product tablosundaki Product sütununun filtre bağlamında tek bir değere sahip olup olmadığını test etmek için DAX işlevi kullanılarak HASONEVALUE elde edilen toplam ProductQuantity Rank değerinin BLANK olduğuna dikkat edin. Ayrı ürün gruplarında bu koşul sağlanırken tüm ürünlerin gösterildiği toplam için sağlanmaz.

Filtre bağlamı HASONEVALUE ve işlevi, filtre bağlamı modülünde tanıtılacaktır.