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żę zaawansowaną analizę rankingu w usłudze LuckyTemplates. Jako przykład posłużę się raportem, który przesłałem na 10. LuckyTemplates Challenge na forum LuckyTemplates.
Pozostałe strony tego raportu omówiłem w innych samouczkach. Na razie chciałbym skupić się na konkretnej stronie w raporcie, która łączy dwa zestawy danych.
Zauważ, że mam już osobne strony dla danych dostawców i danych zakładów . Ale kiedy te dwa zestawy danych wchodzą ze sobą w interakcje, użytkownicy mogą uzyskać jeszcze głębszy wgląd. Dlatego poszedłem dalej i zrobiłem łączony slajd.
Spis treści
Tworzenie połączonej strony dostawców/zakładów
Jeśli widziałeś inne samouczki dotyczące tworzenia tego raportu, zauważysz, że wszystkie slajdy, których użyłem, wyglądają prawie tak samo, z wyjątkiem kilku unikalnych elementów wizualnych. To dlatego, że stworzyłem szablon tła w programie PowerPoint i użyłem go w całym raporcie.
To nadało mojemu raportowi spójny wygląd, a także ułatwiło pracę, wiedząc, że wszystko, co muszę zrobić, to zmienić nagłówek i dane na każdej stronie. Tło pozostało takie samo przez cały czas.
Na tej stronie użyłem jednego fragmentatora chiclet po lewej stronie dla danych zakładu i innego fragmentatora chiclet po prawej stronie dla danych dostawcy.
Fragmentator Chiclet można znaleźć w okienku wizualizacji, ale jeśli jeszcze go nie widzisz, możesz dodać go do własnego pulpitu usługi LuckyTemplates, pobierając go za pośrednictwem usługi AppSource.
Tabela pośrodku zawiera wszystkie dane. Jak widać, zawiera zarówno listę roślin, jak i listę dostawców.
Zawiera również minuty przestoju , średni czas przestoju , defekty oraz rankingi dla tych trzech miar. Ma również ogólną średnią pozycję i ogólną pozycję .
Zwróć uwagę, że dane są obecnie sortowane na podstawie ogólnego rankingu, od najlepszego do najgorszego.
Miary do analizy rankingowej
Przyjrzyjmy się teraz rzeczywistym miarom, które wygenerowały wyniki widoczne w tabeli. Zacznę od Minut Przestoju, które po prostu wykorzystują Całkowitych Minut Przestoju.
Teraz, gdy mam gotowy podstawowy pomiar, mogę zacząć oceniać minuty przestoju. Miarę tę nazwałem „ Najlepsi dostawcy i zakłady osiągające najlepsze wyniki” według liczby minut przestoju . Ale ponieważ mam mało miejsca na stole, po prostu nazwałem to Ranking według minut przestoju w grafice.
Niektórzy używaliby instrukcji w takich przypadkach. Ale to, co zrobiłem, to utworzenie instrukcji z funkcją w lokalizacji zakładu.
Zasadniczo to stwierdzenie mówi, że jeśli w lokalizacji zakładu jest wartość, chcę pokazać rangę. W przeciwnym razie musi pozostać puste.
Zrobiłem to, aby upewnić się, że miejsce na sumę pozostaje puste. Ta kolumna służy tylko do uszeregowania danych w każdym wierszu, więc umieszczanie sumy na dole nie ma sensu.
Istnieje kilka sposobów, aby tak się stało. Ale kiedy oceniałem wyniki, które chciałem uzyskać, doszedłem do wniosku, że użycie IF HASONEVALUE jest najlepszą opcją, biorąc pod uwagę sposób, w jaki wszystkie miary w tym raporcie współdziałają ze sobą.
Zauważysz, że w całej tabeli inne kolumny rangi są również puste. To dlatego, że podejście, które zastosowałem na wszystkich z nich, było podobne.
Następna część pokazuje użycie funkcji . Następnie użyłem aby upewnić się, że oceniam zarówno lokalizację zakładu, jak i dostawcę, nawet jeśli mam na swoim miejscu. Zasadniczo funkcja CROSSJOIN pomaga łączyć dane w celu uzyskania rankingów.
Zauważysz, że chciałem, aby minuty przestoju były większe lub równe zeru, zanim zostaną sklasyfikowane. To dlatego, że chciałem wykluczyć każdy zakład lub dostawcę, który miał puste miejsce w minutach przestoju.
Aby to zademonstrować, posortuję dane według minut przestoju. W tej chwili jest sortowany na podstawie ogólnego rankingu.
Tak to będzie wyglądać, gdy posortuję tabelę według minut przestoju.
Zauważ, że najwyższe dane zawierają zero. Ale w rzeczywistości w zbiorze danych były pewne wpisy, w których Minuty przestoju były w rzeczywistości puste. Zostały one usunięte z równania.
Przejdźmy do następnej miary, która określa średni czas przestoju. Zasadniczo po prostu zduplikowałem miarę rankingową dla minut przestoju i zmieniłem dane, do których się odwołuje.
Jest to technika zwana rozgałęzianiem miar . Zasadniczo oznacza to budowanie miary z miary. Miałem istniejącą miarę, którą powieliłem i poprawiłem, aby pasowała do nowej miary, której potrzebuję.
Rozgałęzianie miar usprawnia cały proces tworzenia raportu.
W ten sposób nie muszę tracić czasu na tworzenie miar od podstaw, zwłaszcza jeśli miara, której potrzebuję, jest bardzo podobna do już istniejącej.
Teraz przejdę do następnej miary, którą jest Ranking według defektów . Po raz kolejny zduplikowałem miarę, której użyłem wcześniej i po prostu zmieniłem obszary, które będą specyficzne dla Defektów.
Wprowadziłem tutaj dodatkową zmianę, w szczególności fakt, że nie chciałem, aby cokolwiek było . Więc nawet jeśli wiersz pod Defektami nie ma w sobie żadnej wartości, chcę, aby został uwzględniony w rankingu tak samo.
Przejdźmy do średniej ogólnej. To jest miara, której użyłem, aby uzyskać ogólną średnią.
Jak widać musiałem stworzyć zmienne dla tej miary. Pierwszy stworzony przeze mnie nazywa się AddRank. Zasadniczo po prostu wziąłem trzy miary, nad którymi pracowałem wcześniej, i dodałem je wszystkie, aby uzyskać łączną liczbę.
Następnie stworzyłem kolejny VAR , który nazwałem Result. Tutaj użyłem funkcji na zmiennej AddRank z dzielnikiem trzech.
A potem w moim oświadczeniu RETURN na dole użyłem IF na dostawcy.
Jest to inne podejście niż HASONEVALUE , którego użyłem wcześniej, chociaż mają tę samą myśl. Mówi po prostu, że jeśli na liście znajduje się dostawca, pokaż mi wynik. W przeciwnym razie powinien zwrócić BLANK .
Teraz przejdę do klasyfikacji generalnej. Oczywiście będzie to nadal podobne do innych miar rankingowych, których użyłem wcześniej.
Użyłem HASONEVALUE dla lokalizacji zakładu, a następnie ponownie mam zestawienie RANKX za pomocą funkcji CROSSJOIN , aby upewnić się, że otrzymam wyniki zarówno według lokalizacji zakładu, jak i dostawcy. Odniosłem się również do miary dla dostawców i zakładów o ogólnej średniej pozycji, nad którą właśnie pracowałem wcześniej. Chcę się tylko upewnić, że numer nie będzie pusty.
Wspaniałą rzeczą jest to, że cały stół można posortować za pomocą dowolnej rangi. Więc jeśli chciałbym posortować moje dane za pomocą minut przestoju, mogę to zrobić. Pokaże, że najlepszym wynikiem dla Zakładu byłaby Nowa Brytania, a Sprzedawcą byłby Linktype.
Co więcej, nie koryguje innych rankingów na stronie. To dlatego, że użyłem w mojej mierze, a nie .
Widzisz, ALLSELECTED uszereguje dane tylko na podstawie wybranych danych. Jeśli na przykład zastosuję filtr, uszeregowane zostaną tylko dane widoczne w tabeli. Dane wykluczone z powodu filtra nie zostaną uwzględnione w rankingu.
Wszystko sprowadza się do rodzaju wyników, których szukasz. W tym przypadku nie chciałem, aby ogólne rankingi się zmieniały, niezależnie od tego, czy patrzę tylko na określone dane. Dlatego zdecydowałem się użyć ALL .
Korzystanie z forum LuckyTemplates do analizy rankingu
Analiza rankingowa może być trudna, zwłaszcza jeśli pracujesz z funkcjami takimi jak RANKX . Wspaniałą rzeczą w LuckyTemplates jest to, że mamy świetne materiały szkoleniowe i kulturę współpracy w społeczności. Na samym można znaleźć wiele dyskusji na temat analizy rankingowej.
Przejdźmy do Forum, abyś wiedział, czego się spodziewać.
Po przejściu na stronę główną forum zobaczysz tutaj funkcję wyszukiwania.
Wpiszę RANKX, aby pokazać, ile informacji można uzyskać z samego forum. Na podstawie wyników wyszukiwania istnieje ponad 50 dyskusji na ten temat.
Zobaczysz mieszankę świetnych rozwiązań dotyczących zadawanych pytań. Jest to społeczność bardzo nastawiona na współpracę, dlatego zobaczysz inne osoby wskakujące do dyskusji i dzielące się najlepszymi praktykami.
Kiedy przewijam wyniki, widzę tę wspaniałą treść od Briana Juliusa, jednego z naszych . Chodzi o to, jak opracować niestandardowe rozstrzyganie remisów podczas korzystania z RANKX.
Jeśli kliknę na to, zobaczysz, że daje ci link do kursu, w którym mogę znaleźć jeszcze więcej informacji na ten temat.
Już sama wizyta na forum LuckyTemplates może dostarczyć wielu informacji, zwłaszcza jeśli utkniesz we własnej analizie rankingu. Możesz nawet uzyskać i uzyskać dostęp do reszty naszej platformy edukacyjnej, aby móc dalej rozwijać swoje umiejętności jako użytkownik usługi LuckyTemplates.
Uwagi dotyczące RANKX — koncepcje formuł LuckyTemplates i języka DAX
Wyświetlanie najlepszych lub najniższych wyników przy użyciu rankingu w usłudze LuckyTemplates
Wydobywanie unikalnych spostrzeżeń w usłudze LuckyTemplates przy użyciu miar rankingu DAX
Wniosek
LuckyTemplates to wszechstronne narzędzie, które pozwala użytkownikom uzyskać jak najwięcej informacji z danych, z którymi pracują. W scenariuszu, który omówiliśmy, możesz uzyskać zaawansowaną analizę rankingową w płynny sposób, jeśli uwzględnimy techniki takie jak rozgałęzianie miar.
Wspaniale jest również skorzystać z zasobów, które mamy tutaj w LuckyTemplates. Nawet jeśli masz zaawansowaną wiedzę w zakresie tworzenia raportów i pulpitów nawigacyjnych, zawsze możesz nauczyć się nowych sztuczek i technik.
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.