Analiza zestawów i wyrażenia zestawów
W ramach analizy zestawów można zdefiniować zestaw (grupę) wartości danych, który jest inny niż zwykły zestaw zdefiniowany przez bieżącą selekcję.
Zazwyczaj po dokonaniu selekcji funkcje agregacji, na przykład Sum, Max, Min, Avg i Count, dokonują agregacji w związku z dokonanymi selekcjami: bieżącymi selekcjami. Selekcje takie automatycznie definiują zestaw danych, który będzie poddany agregacji.
W ramach analizy zestawów można zdefiniować grupę niezależną od bieżących selekcji. Może to być przydatne wówczas, gdy należy przedstawić konkretną wartość, na przykład udział rynkowy produktu w ramach wszystkich regionów, niezależnie od bieżących selekcji.
Analiza zestawów jest również bardzo przydatna podczas tworzenia różnych typów porównań, na przykład porównania produktów sprzedających się najlepiej i najgorzej lub porównania wartości tego- i ubiegłorocznych.
Przykładowo można z listy wartości w aplikacji wybrać rok 2010 w panelu filtrowania. Agregacje będą wówczas oparte na tej selekcji, a w wizualizacjach będą przedstawione tylko wartości tegoroczne.
W przypadku dokonania nowej selekcji wizualizacje zostaną stosownie zaktualizowane. Agregacje są wykonywane na zestawach potencjalnych rekordów zdefiniowanych przez bieżące selekcje. W ramach analizy zestawów można zdefiniować pożądany zestaw niezależnie od dokonanych selekcji.
Tworzenie wyrażeń zestawów
Przed przedstawieniem poszczególnych elementów analizy zestawów należy zasygnalizować różnicę między pojęciami „wyrażenie zestawu” i „analiza zestawów”.
Definiowanie zestawu wartości pól jest określane mianem „definiowania wyrażenia zestawu”, a analizowanie danych przy użyciu wyrażeń zestawów — „analizą zestawów”. W związku z powyższym pozostała część tej sekcji skupia się na wyrażeniach zestawu i ich składnikach.
Oto przykład analizy zestawu: sum( {$<Year={2009}>} Sales ). W tym przykładzie wyrażenie zestawu wygląda następująco: {$<Year={2009}>}
Można określić dwie ogólne zasady składni wyrażenia zestawu:
- Wyrażenie zestawu musi być zastosowane w funkcji agregacji. W tym przykładzie funkcją agregacji jest sum(Sales).
- Wyrażenie zestawu musi być ujęte w nawiasy klamrowe, {}. W tym przykładzie wyrażenie zestawu wygląda następująco: {$<Year={2009}>}.
Wyrażenie zestawu składa się z kombinacji następujących elementów:
- Identyfikatory. Co najmniej jeden identyfikator definiuje relację między wyrażeniem zestawu i tym, co jest oceniane w ramach pozostałej części wyrażenia. Proste wyrażenie zestawu składa się z jednego identyfikatora, na przykład znaku dolara {$}, który oznacza wszystkie rekordy w bieżącej selekcji.
- Operatory. Jeśli określono więcej niż jeden identyfikator, stosuje się co najmniej jeden operator w celu zawężenia zakresu danych przez określenie sposobu połączenia zestawów danych reprezentowanych przez identyfikatory w celu utworzenia na przykład zestawu podrzędnego albo nadrzędnego.
- Modyfikatory. Do wyrażenia zestawu można dołączyć co najmniej jeden modyfikator, aby zmienić dokonaną selekcję. Modyfikator może być używany samodzielnie lub w celu modyfikacji identyfikatora, aby przefiltrować zestaw danych.
Example 1:
To wyrażenie zestawu zawiera identyfikator $ i modyfikator <Year={2009}>. Nie uwzględniono tu operatora. To wyrażenie zestawu jest interpretowane w następujący sposób: „Wszystkie rekordy w bieżącej selekcji, które są właściwe dla roku 2009”.
Example 2:
To wyrażenie zestawu zawiera identyfikatory $ i 1, operator + oraz modyfikatory <Year={2009}> i <Country={'Sweden'}>.
To wyrażenie zestawu ma sumować wartość sprzedaży dla 2009 r. powiązaną z bieżącymi selekcjami i dodaje pełny zestaw danych powiązanych z krajem Sweden we wszystkich latach.
Identyfikatory, modyfikatory i operatory zostały opisane bardziej szczegółowo poniżej.
Identyfikatory
Identyfikatory definiują relację między wyrażeniem zestawu a ocenianymi wartościami pól lub wyrażeniem.
W tym wyrażeniu sum( {$<Year={2009}>} Sales ) identyfikatorem jest znak dolara $, który oznacza, że poddawany ocenie zestaw rekordów obejmuje wszystkie rekordy w bieżącej selekcji. Zestaw ten jest następnie dalej filtrowany przez modyfikator zawarty w tym wyrażeniu zestawu. W bardziej złożonych wyrażeniach zestawu dwa identyfikatory mogą być połączone za pomocą operatora.
W poniższej tabeli przedstawiono kilka typowych identyfikatorów.
Identyfikator | Opis |
---|---|
1 | Reprezentuje cały zestaw wszystkich rekordów w aplikacji niezależnie od dokonanych selekcji. |
$ | Reprezentuje rekordy bieżącej selekcji. To wyrażenie zestawu {$} jest zatem równoważne niepodaniu żadnego wyrażenia zestawu. |
$1 | Reprezentuje poprzednią selekcję. $2 reprezentuje selekcję przed poprzednią selekcją itd. |
$_1 | Reprezentuje następną (kolejną) selekcję. $_2 reprezentuje selekcję po następnej selekcji itd. |
BM01 | Można zastosować dowolny identyfikator zakładki lub dowolną nazwę zakładki. |
MyAltState | Można przywołać selekcje dokonane w stanie alternatywnym przez podanie nazwy tego stanu. |
W poniższej tabeli przedstawiono przykłady innych identyfikatorów.
Przykład | Wynik |
---|---|
sum ({1} Sales) | Zwraca wartość łącznej sprzedaży dla danej aplikacji. Ignorowane są selekcje, ale nie wymiary. |
sum ({$} Sales) |
Zwraca wartość sprzedaży dla bieżącej selekcji (zwraca to samo co funkcja sum(Sales)). |
sum ({$1} Sales) |
Zwraca wartość sprzedaży dla poprzedniej selekcji. |
sum ({BM01} Sales) |
Zwraca wartość sprzedaży dla zakładki o nazwie BM01. |
Operatory
Operatory służą do uwzględniania, wykluczania albo dzielenia części lub całych zestawów danych. Wszystkie operatory korzystają z zestawów jako operandów i zwracają zestaw jako wynik.
W tej tabeli przedstawiono operatory, które mogą być stosowane w wyrażeniach zestawu.
Operator | Opis |
---|---|
+ | Suma. Operacja dwuargumentowa zwracająca zestaw zawierający wszystkie wiersze, które należą do któregokolwiek z dwóch zestawów wejściowych. |
- | Wykluczenie. Operacja dwuargumentowa zwracająca zestaw wszystkich wierszy, które należą do pierwszego, a nie należą do drugiego z dwóch zestawów wejściowych. W przypadku użycia jako operator jednoargumentowy zwraca dopełnienie zestawu wejściowego. |
* | Część wspólna. Operacja dwuargumentowa zwracająca zestaw zawierający wszystkie wiersze, które należą do obu zestawów wejściowych. |
/ | Różnica symetryczna (XOR). Operacja dwuargumentowa zwracająca zestaw zawierający wszystkie wiersze, które należą tylko do jednego z zestawów wejściowych (ale nie do obu z nich). |
W poniższej tabeli przedstawiono przykłady operatorów.
Przykłady | Wyniki |
---|---|
sum( {1-$} Sales ) | Zwraca wartość sprzedaży dla wszystkiego, co zostało wykluczone przez selekcję. |
sum( {$*BM01} Sales ) | Zwraca wartość sprzedaży dla części wspólnej selekcji i zakładki BM01. |
sum( {-($+BM01)} Sales ) |
Zwraca wartość sprzedaży wykluczoną przez selekcję i zakładkę BM01. |
Sum({$<Year={2009}>+1<Country={'Sweden'}>} Sales) | Zwraca wartość sprzedaży z roku 2009 powiązaną z bieżącymi selekcjami i dodaje pełny zestaw danych powiązanych z krajem Sweden dla wszystkich lat. |
Modyfikatory
Modyfikatory służą do uzupełniania lub modyfikowania dokonanej selekcji. Modyfikacje takie można zapisać w wyrażeniu zestawu. Modyfikator zawiera co najmniej jedną nazwę pola. Po każdej z takich nazw określana jest co najmniej jedna selekcja, która może zostać dokonany w tym polu. Modyfikatory są ujęte w nawiasy trójkątne, <>.
Modyfikator zestawu modyfikuje selekcję poprzedniego identyfikatora zestawu. Jeśli brak jest odniesienia do identyfikatora zestawu, uznaje się za taki bieżący stan selekcji.
W poniższej tabeli przedstawiono przykłady modyfikatorów.
Przykład | Wynik |
---|---|
sum({$<OrderDate = DeliveryDate>} Sales) | Zwraca wartość sprzedaży dla bieżącej selekcji, gdzie OrderDate = DeliveryDate. |
sum({1<Region = {US}>} Sales) |
Zwraca wartość sprzedaży dla regionu US, ignorując bieżącą selekcję. |
sum({$<Region = >} Sales) |
Zwraca wartość sprzedaży dla tej selekcji, ale usuwa selekcję w wymiarze Region. |
sum({<Region = >} Sales) |
Zwraca tę samą wartość co w przykładzie powyżej. Jeśli modyfikowany zestaw zostanie pominięty, zakładany jest parametr $. |
sum({$<Year={2000}, Region={“U*”}>} Sales) | Zwraca wartość sprzedaży dla bieżącej selekcji, ale z nowymi selekcjami w wymiarach Year i Region. |
Zapoznaj się z tematem Modyfikatory zestawów, który zawiera dokładniejszy opis modyfikatorów i sposobu ich stosowania w bardziej złożonych analizach zestawów.