Rank - funzione per grafici

Rank() valuta le righe del grafico nell'espressione, e per ciascuna riga, visualizza la posizione relativa del valore della dimensione valutata nell'espressione. Quando valuta l'espressione, la funzione confronta il risultato con quello delle altre righe contenenti il segmento di colonna attuale e restituisce la classificazione della riga attuale all'interno del segmento.

Per i grafici diversi dalla tabelle, il segmento di colonna attuale è definito come visualizzato nell'equivalente di tabella lineare del grafico.

Syntax:  

Rank([TOTAL] expr[, mode[, fmt]])

Return data type: duale

Arguments:  

Argomento Descrizione
expr L'espressione o il campo contenente i dati da misurare.
mode Specifica la rappresentazione numerica del risultato della funzione.
fmt Specifica la rappresentazione testuale del risultato della funzione.
TOTAL

Se il grafico è unidimensionale o se l'espressione è preceduta dal qualificatore TOTAL, la funzione viene valutata nell'intera colonna. Se la tabella o l'equivalente della tabella presenta più dimensioni verticali, il segmento di colonna attuale includerà solo righe con lo stesso valore della riga attuale in tutte le colonne di dimensione, eccetto la colonna che mostra l'ultima dimensione nell'ordinamento tra campi.

Definizione dell'ambito di aggregazione

La classificazione viene restituita come valore duale che, nel caso in cui ogni riga presenti una classificazione univoca, sarà un numero intero compreso tra 1 e il numero di righe nel segmento di colonna attuale.

Nel caso in cui molte righe condividano la stessa classificazione, la rappresentazione testuale e numerica potrà essere controllata mediante i parametri mode e fmt.

mode

Il secondo argomento, mode, può assumere i seguenti valori:

Valore Descrizione
0 (predefinito)

Se tutte le classificazioni all'interno del gruppo condiviso rientrano nella parte bassa del valore medio dell'intera classificazione, tutte le righe all'interno di tale gruppo riceveranno la classificazione più bassa.

Se tutte le classificazioni all'interno del gruppo condiviso rientrano nella parte alta del valore medio dell'intera classificazione, tutte le righe all'interno di tale gruppo riceveranno la classificazione più alta.

Se tutte le classificazioni all'interno del gruppo condiviso si distribuiscono lungo il valore medio dell'intera classificazione, tutte le righe all'interno di tale gruppo riceveranno il valore corrispondente alla media calcolata in base alla classificazione massima e minima dell'intero segmento di colonna.

1 Classificazione minima su tutte le righe.
2 Classificazione media su tutte le righe.
3 Classificazione massima su tutte le righe.
4 Classificazione minima sulla prima riga, quindi incrementata di uno per ogni riga.
fmt

Il terzo argomento, fmt, può assumere i seguenti valori:

Valore Descrizione
0 (predefinito) Valore basso - valore alto su tutte le righe (ad esempio, 3 - 4).
1 Valore basso su tutte le righe.
2 Valore basso sulla prima riga, vuoto sulle righe successive.

L'ordine delle righe per mode 4 e fmt 2 è determinato dall'ordine delle dimensioni del grafico.

Examples and results:  

Creare due visualizzazioni dalle dimensioni Product e Sales e un'altra da Product e UnitSales. Aggiungere le misure come mostrato nella seguente tabella.

Esempi Risultati

Esempio 1. Creare una tabella con le dimensioni Customer e Sales e la misura Rank(Sales)

Il risultato dipende dall'ordinamento delle dimensioni. Se viene ordinata in base a Customer, la tabella elencherà tutti i valori di Sales per Astrida, quindi Betacab e così via. Il risultato per Rank(Sales) mostrerà 10 per il valore Sales 12, 9 per il valore Sales 13 e così via, con il valore di classificazione 1 restituito per il valore Sales 78. Il segmento di colonna successivo inizia con Betacab, per il quale, il primo valore di Sales nel segmento è 12. Il valore di classificazione di Rank(Sales) per questo è fornito come 11.

Se la tabella viene ordinata in base a Sales, i segmenti colonna consisteranno nei valori di Sales e del Customer corrispondente. Poiché vi sono due valori Sales di 12 (per Astrida e Betacab), il valore di Rank(Sales) per tale segmento di colonna è 1-2, per ciascun valore di Customer. Questo perché sono presenti due valori di Customer per il valore Sales 12. Se fossero stati presenti 4 valori, il risultato sarebbe stato 1-4 per tutte le righe. Questo mostra l'aspetto del risultato per il valore predefinito (0) dell'argomento fmt.

Esempio 2. Sostituire la dimensione Customer con Product e aggiungere la misura Rank(Sales,1,2) Viene restituito 1 sulla prima riga di ciascun segmento di colonna, mentre tutte le altre righe vengono lasciate vuote perché gli argomenti mode e fmt sono impostati rispettivamente su 1 e 2.

Risultati per l'esempio 1, con la tabella ordinata per Customer:

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

Risultati per l'esempio 1, con la tabella ordinata per Sales:

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

 

Dati utilizzati negli esempi:

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 '|');