SprytneSztuczki#1 - 9 sprytnych funkcji Tableau, które ułatwią Ci życie

Tym wpisem rozpoczynam nowy cykl - Sprytne Sztuczki. Ma to być pewnego rodzaju zbiór subiektywnie najlepszych funkcji, skrótów i hacków w Tableau. Celem jest poprawa efektywności i przyjemności z pracy z Tableau. Pierwsza instancja cyklu skupi się na najprzydatniejszych funkcjach.

1. SIGN()

Ile razy tworząć dashboard tworzyliście liczniki KPI i musieliście ikonką i/lub kolorem pokazać zmianę do poprzedniego okresu? Na pewno nie raz. Zazwyczaj w takim przypadku pisałem pole kalkulowane z odpowiednim warunkiem, lub wpisywałem warunek w prostu w odpowiednią pastylkę. 

Zaczynamy od tego

Minusem pierwszego rozwiązania jest generowanie ogromnej ilości pól kalkulowanych. Minusem drugiego jest gubienie formatowania przy wgrywaniu na serwer. Tak, okazuje się, że aby zapisać formatowanie (kolor czy kształt) musi być ono ustawione dla pola kalkulowanego. Korzystając z funkcji SIGN() możemy znacząco ogarniaczyć ilość warunków, które musimy napisać.

A kończymy z tym
Dodatkową korzyścią z funkcji SIGN() jest fakt, że zwraca ona wartości numeryczne; -1 dla wartości ujemnych, 0 dla 0 i 1 dla wartości dodatnich. Ułatwia to sterowanie kolorem, ponieważ pola możemy użyć jako zmiennej ciągłej a nie dyskretnej (chociaż faktycznie jest dyskretna).

2. RANDOM()

Funkcja random została wspomniana już we wpisie o jitteringu. Do tego jej głównie używam. Pozawala ona rozwiązać problem overplottingu, czyli nadpisywania wielu wartości na wykresie. Jak sobie z tym radzić z tym problemem poruszę w oddzielnym wpisie. 

Przykład jitteringu // Kliknij aby przejść do Tableau Public
Użycie funkcji RANDOM() pozwala na rozrzucenie punktów w poziomie, dzięki czemu pojawia się więcej przestrzeni i nie nakładają się an siebie tak bardzo.

3.ZN()

Funkcja ZN() zamienia braki danych, czyli nulle, na zera. Tylko tyle i aż tyle. Czemu jest taka przydatna? Jeżeli w waszym polu kalkulowanym pojawi się null, to jej wynik też jest nullem. Dzięki tej funkcji zamiast tego pojawi się 0. Szczególnie użyteczna przy brudnych danych i różnych table calculations.

4.MAX()

Niby prosta funkcja zwracająca największą wartość. Jednak po wczytaniu się w dokumentację okazuje się, że potrafi znacznie więcej. Po pierwsze, okazuje się, że MAX() działa również ze stringami - zwraca najwyższą wartość (zależną od typu sortowania stringów na źródle). Po drugie, i znacznie ciekawsze, funkcja MAX() może przyjmować dwa argumenty. W takiej sytuacji zwracaj większy z nich.

5.IIF()

Kolejny skrót. Nie musimy pisać już długiego warunku. Z dokumentacji Tableau:

IIF(test, then, else, [unknown])

6.IFNULL()

Alternatywa dla ZN(). Jeżeli pierwszy argument nie jest nullem to zostaje on zwrócony, jeśli jest nullem to zwracany jest drugi argument. Przydatna zwłaszcza przy stringach. Uwaga: funkcja, wbrew swojej nazwie, działa jako warunek z zaprzeczeniem, tzn. IF NOT NULL THEN, a nie IF NULL THEN.

7.ISNULL()

Ostatnia z funkcji związanych z nullem. Test logiczny zwracający TRUE lub FALSE.

8.ATTR()

Dla wielu osób funkcja-zagadka. Jeżeli się jej nie rozumie to może spowodować bardzo dużo problemów. Jednocześnie szalenie użyteczna. W dużym skrócie, funkcja sprawdza jednolitość (heterogeniczność) argumentu i służy do agregacji. Robi to porównując najmniejszą i największą wartość partycji. Jeżeli są sobie równie, to zwraca wartość argumentu, jeżeli nie to zwraca *. Czyli, zwraca wartość jeśli jest ona unikalna, jeśli nie zwraca *. Można doczytać tutaj. Przydatna zwłaszcza przy tooltipach i labelach.

9.INDEX()

Jedyna table calculation w zestawieniu. INDEX() służy do indeksowania, czyli numerowania, rekordów. Wynik zależny jest od tego, jak zostanie skonfigurowana - można ustawić wielkość partycji oraz opcje resetu. Niezastąpiona przy wszelkiej maści custom chartach oraz normalizacji szeregów czasowych. Funkcja zdecydowanie warta osobnego wpisu.

Komentarze

Popularne posty z tego bloga

IronViz 2018.2 - Best New Entry i drugie miejscie ogółem

Praktyczne użycie kolorów w wizualizacji danych