Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr
W tym samouczku omówimy pakiet dplyr, który umożliwia sortowanie, filtrowanie, dodawanie i zmianę nazw kolumn w języku R.
W tym samouczku pokażę, w jaki sposób zmaksymalizowałem technikę zwaną rozgałęzianiem miar , aby przyspieszyć proces tworzenia raportu dotyczącego mojego zgłoszenia do 10. konkursu LuckyTemplates Challenge .
Wyzwanie Power BI to seria scenariuszy, w których dostarczany jest zestaw danych, a uczestnicy proszeni są o dostarczenie zestawu wymagań określonych w każdym opisie projektu. To świetny sposób dla użytkowników usługi LuckyTemplates na znajdowanie kreatywnych sposobów zastosowania swojej wiedzy i umiejętności w rzeczywistych scenariuszach.
To zgłoszenie zawiera kilka stron, z których dwie omówiłem już w innym samouczku. W tym poście na blogu omówię, w jaki sposób utworzyłem trzy dodatkowe strony, które są nieco bardziej złożone. Pomimo złożoności udało mi się usprawnić ten proces.
Spis treści
Tworzenie strony raportu o roślinach
Zacznę od strony Rośliny . Tak prezentuje się efekt końcowy.
Jeśli przejrzałeś inny samouczek, o którym wspomniałem wcześniej, zobaczysz, że tło jest nieco podobne. To dlatego, że stworzyłem tła dla całego mojego raportu w programie PowerPoint przy użyciu jednego szablonu. Po prostu zmieniłem nagłówek dla każdej strony.
Następnie przesłałem to tło na każdą stronę. Ponieważ zapisałem slajd w tle dla tej strony jako Plants.png, zobaczysz tę samą nazwę pliku w sekcji Tło strony w moim okienku wizualizacji.
Użyłem również tych fragmentatorów dla dostawcy, kategorii i typu materiału, które pojawiają się również na innych stronach.
Przycisk strony głównej jest stały na wszystkich moich stronach. To świetne narzędzie nawigacyjne, które ułatwia użytkownikom powrót do strony głównej jednym kliknięciem po zakończeniu pracy na tej stronie.
To, co jest wyjątkowe na stronie Zakłady, to przycisk, który umożliwia użytkownikom przeglądanie połączonych informacji o zakładach i dostawcach.
Dane dla dostawców obejmują całą stronę, ale połączenie danych z tych dwóch stron jest przydatne, zwłaszcza jeśli użytkownik chce uzyskać głębszy wgląd.
Mam jeszcze jedną ikonę na górze, która pozwala użytkownikom przeglądać anomalie roślin.
Anomalie są dość nowe i zostały wprowadzone w aktualizacji usługi LuckyTemplates z listopada 2020 r.
W skrajnej lewej części tej strony użyłem tak zwanej krajalnicy chiclet.
Stworzyłem ten fragmentator za pomocą tej ikony podświetlonej pod moim okienkiem wizualizacji po prawej stronie.
Jeśli nie widzisz krajalnicy chiclet od końca, oznacza to, że musisz najpierw pobrać aplikację. Po prostu kliknij Więcej wizualizacji w obszarze Narzędzia zewnętrzne , a następnie wybierz Z AppSource .
Spowoduje to otwarcie okna z listą różnych aplikacji, których możesz użyć do swojego raportu. Upewnij się, że w lewym okienku zaznaczono opcję „Wszystkie”.
Korzystając z paska wyszukiwania, po prostu wpisz „chiclet”, a następnie naciśnij przycisk wyszukiwania. Fragmentator, którego szukasz, pojawi się w wynikach wyszukiwania.
Po naciśnięciu przycisku Dodaj fragmentator pojawi się w okienku wizualizacji na pulpicie usługi LuckyTemplates. Ten fragmentator to świetny sposób na urozmaicenie raportów, zwłaszcza jeśli chcesz wyjść poza domyślne opcje dostępne w usłudze LuckyTemplates.
Tworzenie wizualizacji i korzystanie z rozgałęzień miar dotyczących minut przestojów i trendów defektów
Wizualizacja po prawej stronie mojej strony pokazuje trendy minut przestoju , skumulowane minuty przestoju według daty , trendy defektów i skumulowane usterki według daty .
W przypadku trendów minut przestoju użyłem wykresu liniowego.
Stworzyłem to, używając tej ikony w moim okienku wizualizacji.
Jeśli chodzi o miarę, której użyłem, można ją znaleźć w moim folderze Key Measures pod Moving Avg .
Ta miara jest obliczeniem trendu średniej ruchomej jednego miesiąca przestoju.
Ci z was, którzy czytają wiele samouczków LuckyTemplates lub oglądają nasze filmy instruktażowe, uznają to podejście za znajome. Nasz dyrektor generalny, Sam McKay, w wielu swoich filmach wykorzystuje tę technikę miesięcznej średniej kroczącej.
Jest to prosta miara DAX, która używa z od minus jeden miesiąc. Wszystko to odbywa się w ciągu minut przestoju.
Ta miara jest już sformatowana. Ale wiem też, że wielu z nas formatuje nasze miary DAX na różne sposoby. Niezależnie od tego, jak sformatujesz swoje miary, używam świetnego narzędzia, które może być pomocne również dla Ciebie.
Jeśli odwiedzisz , zauważysz, że jeśli przewiniesz dowolny post na sam dół, zobaczysz różne narzędzia i zasoby, które mogą być pomocne w procesie opracowywania raportów. Aby sformatować moje miary języka DAX, używam .
Wiem, że istnieją inne witryny, ale zdecydowałem się użyć tego narzędzia, ponieważ jest ono powiązane z wieloma innymi narzędziami LuckyTemplates w Analyst Hub. Jest również bardzo prosty i łatwy w użyciu.
Aby pokazać, jak to działa, wkleję w to miejsce miarę, którą pokazałem wcześniej. Następnie kliknę przycisk Format znajdujący się na dole strony.
To automatycznie poprawia miarę, nadając jej najczystszy możliwy format, biorąc pod uwagę Twoje preferencje.
Możesz ustawić swoje preferencje w Ustawieniach po prawej stronie strony. Na przykład, jeśli wolisz długie linie zamiast krótkich, możesz przełączyć odpowiednią opcję w obszarze Linie .
Osobiście wolę używać wielu krótkich linii do moich pomiarów.
Masz również możliwość dodania spacji po każdej funkcji używanej w takcie. Jak widać, spacja ułatwia zrozumienie miary.
Gdy będziesz zadowolony z tego, jak wygląda Twoja miara, po prostu kliknij Kopiuj kod na dole.
Następnie wróć do pulpitu usługi LuckyTemplates i wklej sformatowaną miarę.
Moim zdaniem bardzo ważne jest, aby kody DAX były czyste i odpowiednio sformatowane. Więc pamiętaj, aby poświęcić na to czas, gdy pracujesz z miarami porównawczymi.
Teraz, gdy już wiesz, jak stworzyłem Minuty przestoju, praca nad stroną Defekty będzie łatwa. Sam zawsze mówi o rozgałęzianiu miar i to jest koncepcja, którą tutaj zastosowałem.
Rozgałęzianie miar oznacza rozpoczynanie od prostej miary podstawowej, a następnie tworzenie lub rozgałęzianie do innych miar.
W tym przypadku po prostu skopiowałem miarę Minut Przestoju i przekształciłem ją w Defekty.
Teraz, gdy miary są na miejscu, wrócę do moich wizualizacji.
Kiedy pracuję z wykresami liniowymi, takimi jak ten, lubię, gdy linie są grubsze niż zwykle. Dzięki temu trend jest bardziej widoczny. Wartość domyślna jest zwykle dość cienka, co oznacza, że trendy nie są wystarczająco dobrze uwypuklone.
Aby dostosować grubość linii, po prostu przejdź do Kształtów pod wizualizacjami i zwiększ szerokość obrysu . Im wyższa liczba, tym grubsza staje się linia. Dla powyższego obrazu ustawiłem go na 3.
Zobaczysz, że jest tu wiele opcji, w jaki sposób możesz jeszcze bardziej ulepszyć swoje efekty wizualne. Możesz wybrać kolory danych lub dodać etykiety danych .
Jeśli chodzi o tego typu wizualizacje, zwykle nie używam etykiet danych. Jednak lubię używać podpowiedzi. Dlatego gdy najedziesz kursorem na dowolny punkt w wizualizacji, zobaczysz średnią ruchomą jednego miesiąca dla tej konkretnej daty.
Tworzenie wizualizacji i korzystanie z rozgałęzień miar na skumulowanych minutach przestojów i defektach
Gdy przejdziemy do wizualizacji Skumulowane minuty przestoju według daty , zobaczysz, że jest to podstawowy wykres warstwowy. Ponownie po prostu użyłem wizualizacji, która jest domyślnie dostarczana z usługą LuckyTemplates.
To były skumulowane miary, które stworzyłem. Uporządkowałem je, grupując je w folderze Zbiorczym.
To jest miara, której użyłem do skumulowanych minut przestoju .
Jak widać, miara Skumulowanych minut przestoju została obliczona przy użyciu funkcji zastosowanej do minut przestoju. Następnie użyłem w tabeli Data z datą mniejszą lub równą dacie . To obliczenie daje mi skumulowaną sumę w czasie na tym wykresie.
Sometimes, I include secondary values in these charts. For example, I can use an element like Downtime Minutes.
So I’ll search for Downtime Minutes under the Fields pane.
Then, I’ll put that as a secondary value.
But when we look at the visual now, it doesn’t give us a clear picture of the data.
This is why I chose not to use a secondary value here. So I’ll take out that secondary value and then bring it back to how it was before.
What I did use in this visual are the zoom sliders. I used them on both the X and Y axis.
Zoom sliders were introduced in the November 2020 LuckyTemplates update. It’s a cool feature that allows users to zero in on more specific details.
The zoom sliders can be activated under the formatting pane.
You have the option to use the zoom slider for either the X axis or the Y axis, or you can turn both on.
You also have the option to add labels and tool tips if you want to. But in my case, I don’t have as much space as I want, so I chose not to add them. But if I was working on a larger visual, then I would probably use them, too.
Basically, you just need to click on the slider and pull it up or down to zoom in and out of the visual. In the Y axis, for example, see how zooming in actually expands the numbers as well.
Zooming in on the Z axis does the same thing. When zoomed out earlier, it only showed the years. But when I zoom in, it starts showing narrower time periods, like months.
It’s a really cool feature, especially if you’re working with so much data and would like to allow users to zero in on the specifics of your visual. When you’re zoomed in like this, you can also see a larger view by clicking on this icon for focus mode.
Rozszerza to ten konkretny widok na cały ekran, ułatwiając sprawdzanie danych w określonych punktach.
W przypadku defektów skumulowanych ponownie użyłem rozgałęzień miar, aby mój proces był bardziej wydajny. Skopiowałem miarę dla moich skumulowanych minut przestoju, które pokazywałem wcześniej.
Następnie zduplikowałem go i wymieniłem Minuty przestoju na defekty.
Jeśli chodzi o stronę wizualną, zrobiłem to samo. Po prostu zduplikowałem wizualizację dla Skumulowanych minut przestoju według daty, zmieniłem nieco format kolorów, wybierając jaśniejszy odcień, a następnie zastosowałem miarę dla Skumulowanych defektów.
Używanie rozgałęzień miar podczas oceniania wydajności
Ostatnim elementem wizualnym, który omówię na tej stronie, jest tabela pośrodku. W tym miejscu wykonałem naprawdę dużo pracy, biorąc pod uwagę liczbę środków, które musiały zostać w to włożone.
Możesz zobaczyć, że ta wizualizacja pokazuje lokalizacje zakładów, minuty przestojów i usterki, a także niektóre średnie i rankingi.
Zacznę od pomiaru średniego czasu przestoju .
Oto jak wygląda ta miara.
Jest to podstawowa miara, która wykorzystuje ŚREDNIĄ DATY zastosowaną do Minut Przestoju dla każdego zakładu. To jest moja podstawowa podstawa przy klasyfikowaniu roślin.
Następnie pokażę ci, jak zrobiłem pomiary rankingowe. Zacznę od rankingu według minut przestoju .
Miarę nazwałem Top Performing Plants By Downtime . Najwyraźniej ta nazwa jest zbyt długa, aby można ją było wykorzystać w wizualizacji. Dlatego zamiast tego nazwałem kolumnę Pozycja według minut przestoju .
Basically, I used for the Plant Location.
I used this combination because I didn’t need a total showing up at the bottom. I wanted the plant locations to be filtered out so that no total will come up. After all, there’s no sense in having a total when the column is merely ranking the data. That’s why you’ll see that the corresponding totals are blank.
Some may also use IF here instead of ISFILTERED. You can choose any technique that you feel comfortable using as long as it has the same outcome.
Next, I used the function applied to Plant Locations.
Możesz także użyć zamiast ALL , w zależności od tego, jakie wyniki chcesz zobaczyć. Podstawowa różnica polega na tym, że WSZYSTKO obejmuje każdy fragment danych, niezależnie od tego, czy mam ustawione filtry.
Oto przykład pokazujący różnicę. Wybiorę konkretnego dostawcę z fragmentatora u góry.
Gdy to zrobię, dane w tabeli będą pokazywać tylko odpowiednie wiersze. Zwróć uwagę, że w pozycji Ranking według minut przestoju są wyświetlane wartości 2, 4, 5 itd. Tak to wygląda, jeśli używasz funkcji ALL. Zachowuje tę samą rangę, ponieważ ranga nie powinna się zmieniać, jeśli odfiltrujesz niektóre dane.
Jeśli użyję WSZYSTKO WYBRANE w tej samej formule, te kolumny pokażą 1, 2, 3 i tak dalej. To dlatego, że uszereguje tylko przefiltrowane wyniki i wykluczy dane, które nie są wyświetlane po zastosowaniu filtrów.
Wracając do miary, RANKX jest również stosowany do Minut Przestoju, z danymi w porządku ASC .
Na końcu tej instrukcji JEŻELI użyłem funkcji .
Gwarantuje to, że jeśli lokalizacja zakładu jest filtrowana, pojawi się ranga. Jeśli nie, pozostawi puste miejsce.
Dalej jest Ranking według średniej liczby minut przestoju .
Ponownie zastosuję tutaj rozgałęzienia miar. Zamierzam użyć tej samej formuły, której użyłem do Rankingu według liczby minut przestoju i zamiast tego użyję miary Średni czas przestoju .
Zrobiłem to samo dla Rank By Defects .
Jak widać, dzięki rozgałęzianiu miar tworzenie raportów usługi LuckyTemplates jest szybsze i wydajniejsze.
Teraz, gdy wykonałem pomiary dla rang, zajmę się ogólną średnią rangą .
Ten był nieco trudniejszy i wymagał tworzenia zmiennych. Zacząłem od stworzenia dla AddRank, który bierze pod uwagę trzy rankingi — Zakłady o najwyższej wydajności według czasu przestoju , Zakłady o najwyższej wydajności według defektów i Zakłady o najwyższej wydajności według średniego czasu przestoju — i podsumowuje je.
Następna zmienna, którą nazwałem Result , po prostu używa funkcji zmiennej AddRank przez trzy.
Następnie chciałem RETURN , który ponownie zastosuje funkcje JEŚLI ISFILTEROWANE . Oczywiście, jeśli Result nie jest filtrowany, chcę, aby zwracał BLANK .
Kolejną miarą, którą stworzyłem, była Ranking Ogólny .
Ponownie użyłem funkcji IF ISFILTERED . Użył również RANKX na podstawie ostatniej miary ogólnego średniego rankingu , którą właśnie zrobiłem. Jest bardzo podobny do pierwszych trzech formuł, które stworzyłem.
Kiedy spojrzysz na Ranking ogólny , zobaczysz, że są remisy.
Gdybym chciał stworzyć miarę, która wyróżniałaby ogólną pozycję i nie powodowałaby remisu, istnieją sposoby, aby to zrobić za pomocą języka DAX.
Pamiętaj, że możesz posortować ranking ogólny od ostatniego do pierwszego, po prostu klikając strzałkę na nazwie kolumny. Spowoduje to umieszczenie najsłabszych wyników na szczycie.
Tworzenie stron dostawców i typów materiałów
Strona Rośliny mogła wymagać dużo pracy, ale strony Dostawcy i Typy materiałów zawierają te same elementy. Oznacza to, że skopiowałem i wkleiłem takty dla tych stron.
W przypadku slajdu Sprzedawcy właśnie zduplikowałem slajd Rośliny i podzieliłem szczegóły dotyczące roślin na szczegółowe informacje dotyczące dostawców.
Krajalnica typu chiclet na stronie Sprzedawcy ma po prostu więcej wpisów niż na stronie Rośliny, ale wszystko inne jest takie samo.
Zrobiłem to samo dla strony Rodzaj materiału .
Pokazuje to, że w wielostronicowych raportach, takich jak ten, można po prostu utworzyć jeden slajd i przekształcić go w trzy slajdy w ciągu kilku minut. Wystarczy odpowiednie zaplanowanie.
Obliczenia w usłudze LuckyTemplates przy użyciu rozgałęzień miar
Rozgałęzianie miar: strategia rozwoju usługi LuckyTemplates
Miary DAX w usłudze LuckyTemplates przy użyciu rozgałęzień miar
Wniosek
Opracowanie raportu powinno być dokładnym procesem, ponieważ chcesz, aby ludzie uzyskali jak najwięcej informacji. Ale jest to również przeciwne do zamierzonego, jeśli sprawisz, że będzie to zbyt żmudny proces, ponieważ nie każdy ma czas na tworzenie złożonych raportów.
To sprawia, że rozgałęzianie miar jest świetną techniką, dzięki której proces jest tak wydajny, jak to tylko możliwe, bez poświęcania wyników.
Pomaga również mieć jasny plan i kilka szablonów projektów do pracy. Jak widziałeś w tym samouczku, tworzenie wielu slajdów w krótkim czasie jest możliwe w dobrze przemyślanym raporcie.
Mam nadzieję, że udało Ci się przyswoić niektóre z technik, których użyłem, abyś mógł również zacząć tworzyć swój proces tak wydajnie, jak to tylko możliwe.
Wszystkiego najlepszego,
Jarretta
W tym samouczku omówimy pakiet dplyr, który umożliwia sortowanie, filtrowanie, dodawanie i zmianę nazw kolumn w języku R.
Odkryj różnorodne funkcje zbierania, które można wykorzystać w Power Automate. Zdobądź praktyczne informacje o funkcjach tablicowych i ich zastosowaniu.
Z tego samouczka dowiesz się, jak ocenić wydajność kodów DAX przy użyciu opcji Uruchom test porównawczy w DAX Studio.
Czym jest self w Pythonie: przykłady z życia wzięte
Dowiesz się, jak zapisywać i ładować obiekty z pliku .rds w R. Ten blog będzie również omawiał sposób importowania obiektów z R do LuckyTemplates.
Z tego samouczka języka kodowania DAX dowiesz się, jak używać funkcji GENERUJ i jak dynamicznie zmieniać tytuł miary.
W tym samouczku omówiono sposób korzystania z techniki wielowątkowych wizualizacji dynamicznych w celu tworzenia szczegółowych informacji na podstawie dynamicznych wizualizacji danych w raportach.
W tym artykule omówię kontekst filtra. Kontekst filtrowania to jeden z głównych tematów, z którym każdy użytkownik usługi LuckyTemplates powinien zapoznać się na początku.
Chcę pokazać, jak usługa online LuckyTemplates Apps może pomóc w zarządzaniu różnymi raportami i spostrzeżeniami generowanymi z różnych źródeł.
Dowiedz się, jak obliczyć zmiany marży zysku przy użyciu technik, takich jak rozgałęzianie miar i łączenie formuł języka DAX w usłudze LuckyTemplates.