Rank - grafik fonksiyonu
Rank(), ifadedeki grafiğin satırlarını değerlendirir ve her bir satır için, ifadede değerlendirilen boyutun değerinin göreli konumunu görüntüler. Fonksiyon ifadeyi değerlendirirken, sonucu, geçerli sütun segmentini içeren diğer satırların sonucuyla karşılaştırır ve geçerli satırın segment içindeki sıralamasını döndürür.
Tablolar dışındaki grafikler için, geçerli sütun segmenti grafiğin düz tablo eşdeğerinde görüldüğü gibi tanımlanır.
Söz Dizimi:
Rank([TOTAL] expr[, mode[, fmt]])
Dönüş verileri türü: dual
Bağımsız Değişkenler:
Bağımsız Değişken | Açıklama |
---|---|
expr | Hesaplanacak verileri içeren ifade veya alan. |
mode | Fonksiyon sonucunun sayı temsilini belirtir. |
fmt | Fonksiyon sonucunun metin temsilini belirtir. |
TOTAL |
Grafik tek boyutluysa veya ifadeden önce TOTAL niteleyicisi geliyorsa fonksiyon tüm sütun genelinde değerlendirilir. Tablo veya tablo eşdeğeri birden çok dikey boyuta sahipse geçerli sütun segmenti, alanlar arası sıralama düzenindeki son boyutu gösteren sütun haricinde tüm boyut sütunlarında geçerli satır olarak yalnızca aynı değerlere sahip satırları içerir. |
Sıralama ikili değer olarak döndürülür; bu, her satırın benzersiz bir sıralamaya sahip olduğu durumlarda 1 ile geçerli sütun segmentindeki satır sayısı arasında bir tamsayıdır.
Birkaç satırın aynı sıralamayı paylaştığı durumlarda, metin ve sayı temsili mode ve fmt parametreleriyle kontrol edilebilir.
mode
İkinci bağımsız değişken mode şu değerleri alabilir:
Değer | Açıklama |
---|---|
0 (varsayılan) |
Paylaşma grubundaki tüm sıralamalar tüm sıralamanın orta değerinin düşük tarafına denk geliyorsa, tüm satırlar paylaşma grubu içindeki en düşük sıralamayı alır. Paylaşma grubundaki tüm sıralamalar tüm sıralamanın orta değerinin yüksek tarafına denk geliyorsa, tüm satırlar paylaşma grubu içindeki en yüksek sıralamayı alır. Paylaşma grubundaki sıralamalar tüm sıralamanın orta değeri üzerine yayılmışsa, tüm satırlar sütun segmentinin tamamındaki üst ve alt sıralamanın ortalamasına karşılık gelen değeri alır. |
1 | Tüm satırlarda en düşük sıralama. |
2 | Tüm satırlarda ortalama sıralama. |
3 | Tüm satırlarda en yüksek sıralama. |
4 | Birinci satırda en düşük sıralama, ardından her satır için bir birim artırılır. |
fmt
Üçüncü bağımsız değişken fmt şu değerleri alabilir:
Değer | Açıklama |
---|---|
0 (varsayılan) | Tüm satırlarda düşük değer - yüksek değer (örn. 3 - 4). |
1 | Tüm satırlarda düşük değer. |
2 | Birinci satırda düşük değer, sonraki satırlarda boş. |
mode 4 ve fmt 2 için satırların sıralaması, grafik boyutlarının sıralama düzenine göre belirlenir.
Örnekler ve sonuçlar:
Product ile Sales boyutlarından bir grafik ve Product ile UnitSales boyutlarından bir diğer grafik olmak üzere iki görselleştirme oluşturun. Aşağıdaki tabloda gösterildiği gibi hesaplamaları ekleyin.
Örnekler | Sonuçlar |
---|---|
Örnek 1. Customer ve Sales boyutları ve Rank(Sales) hesaplaması ile bir tablo oluşturun |
Sonuç, boyutların sıralama düzenine göre değişir. Tablo Customer boyutuna göre sıralanırsa, tüm Sales değerleri (önce Astrida, sonra Betacab için vs.) tabloda listelenir. Rank(Sales) sonuçları Sales değeri 12 için 10, Sales değeri 13 için 9 vs. gösterir ve Sales değeri 78 için döndürülen sıralama değeri 1 olur. Bir sonraki sütun segmenti Betacab ile başlar ve bu öğe için segmentteki ilk Sales değeri 12'dir. Bunun için Rank(Sales) sıralama değeri 11 olarak verilmektedir. Tablo Sales öğesine göre sıralanırsa, sütun segmentleri Sales ve karşılık gelen Customer değerlerinden oluşur. İki Sales değeri 12 olduğundan (Astrida ve Betacab için), bu sütun segmenti için Rank(Sales) değeri 1-2'dir (her bir Customer değeri için). Bunun nedeni Sales değeri 12 için iki Customer değeri olmasıdır. 4 değer olsaydı, sonuç tüm satırlar için 1-4 olurdu. Bu, fmt bağımsız değişkeninin varsayılan değeri (0) için sonucun nasıl göründüğünü gösterir. |
Örnek 2. Customer boyutunun yerine Product koyun ve Rank(Sales,1,2) hesaplamasını ekleyin | mode ve fmt bağımsız değişkenleri sırasıyla 1 ve 2 olarak ayarlandığından, bu ifade her bir sütun segmentinin ilk satırında 1 döndürür ve diğer satırları boş bırakır. |
1. örneğin sonuçları (tablo Customer değerine göre sıralandığında):
Customer | Sales | Rank(Sales) |
---|---|---|
Astrida | 12 | 10 |
Astrida | 13 | 9 |
Astrida | 20 | 8 |
Astrida | 22 | 7 |
Astrida | 45 | 6 |
Astrida | 46 | 5 |
Astrida | 60 | 4 |
Astrida | 65 | 3 |
Astrida | 70 | 2 |
Astrida | 78 | 1 |
Betcab | 12 | 11 |
1. örneğin sonuçları (tablo Sales değerine göre sıralandığında):
Customer | Sales | Rank(Sales) |
---|---|---|
Astrida | 12 | 1-2 |
Betacab | 12 | 1-2 |
Astrida | 13 | 1 |
Betacab | 15 | 1 |
Astrida | 20 | 1 |
Astrida | 22 | 1-2 |
Betacab | 22 | 1-2 |
Betacab | 24 | 1-2 |
Canutility | 24 | 1-2 |
Örneklerde kullanılan veriler:
ProductData:
Load * inline [
Customer|Product|UnitSales|UnitPrice
Astrida|AA|4|16
Astrida|AA|10|15
Astrida|BB|9|9
Betacab|BB|5|10
Betacab|CC|2|20
Betacab|DD|0|25
Canutility|AA|8|15
Canutility|CC|0|19
] (delimiter is '|');
Sales2013:
crosstable (Month, Sales) LOAD * inline [
Customer|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec
Astrida|46|60|70|13|78|20|45|65|78|12|78|22
Betacab|65|56|22|79|12|56|45|24|32|78|55|15
Canutility|77|68|34|91|24|68|57|36|44|90|67|27
Divadip|57|36|44|90|67|27|57|68|47|90|80|94
] (delimiter is '|');