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.
Za każdym razem, gdy pracuję z członkami LuckyTemplates na forum, widziałem pewne zamieszanie z funkcjami iteracyjnymi w języku DAX. Zrobimy więc przegląd tego, co można osiągnąć za pomocą tych funkcji i dlaczego warto z nich korzystać. Możesz obejrzeć pełny film tego samouczka na dole tego bloga.
Im bardziej zapoznasz się z formułami języka DAX , tym funkcji iteracyjnych będziesz używać znacznie częściej, niż myślisz. Są znacznie bardziej wszechstronne niż proste funkcje agregujące, takie jak SUMA lub AVERAGE .
Mam tutaj kilka przykładów i chcę przeanalizować logikę w każdym z nich, abyś mógł bardzo dobrze zrozumieć, co faktycznie dzieje się, gdy logika jest uruchamiana za pomocą tych formuł.
Kluczową rzeczą w funkcjach iteracyjnych jest to, że wykonują iterację przez coś.
Spis treści
Prosta iteracja przy użyciu SUMX
W tym przypadku chcę coś podsumować, ale chcę przejrzeć każdy pojedynczy wiersz w tej tabeli Sales.
A potem w każdym rzędzie chcę tutaj uruchomić tę konkretną logikę.
Przejdźmy szybko do naszej bardzo prostej tabeli Sales, w której chcę wprowadzić logikę w każdym wierszu. A potem chcę pomnożyć ilość przez cenę.
Cena nie istnieje w tej tabeli. W przypadku tego konkretnego modelu znajduje się on w tabeli produktów.
Następną rzeczą, którą muszę zrobić, to sięgnąć z powrotem do mojej tabeli Product i mogę to zrobić za pomocą RELATED . Kiedy obliczamy ilość razy odpowiednią cenę, robimy to dla każdego wiersza. Dokładnie to dzieje się wewnątrz tej formuły.
To są kluczowe pojęcia, o których należy pamiętać, gdy zaczynamy robić bardziej zaawansowane rzeczy.
Alternatywne podejście do uzyskiwania sprzedaży za pomocą SUMX
W tym przykładzie ponownie wykonałem iterację SUMX w tabeli Sales. Więc uruchamiamy tę logikę w każdym pojedynczym wierszu i obliczamy ilość razy cenę w każdym pojedynczym wierszu, a następnie agregujemy to po zakończeniu wszystkich iteracji.
Zobaczysz tutaj, że ten wynik jest dokładnie taki sam, jak wyniki w pierwszym przykładzie (samouczek SUMX 2) lub Total Sales.
Możesz tu umieścić całą gamę różnych rzeczy – może to być miara i możesz rozgałęziać się za pomocą funkcji iteracyjnej. Nie musisz odwoływać się do konkretnych kolumn, aby poprawnie uzyskać obliczenia.
Jak widać tutaj, wszystko, co zrobiłem, to umieszczenie miary (Sprzedaż całkowita) tutaj i otrzymuję dokładnie ten sam wynik.
SUMX i funkcje logiczne
Używam tutaj SUMX , ale jest to również istotne dla AVERAGEX , MINX i MAXX . To wszystko są bardzo podobne rzeczy.
Inną kluczową rzeczą do zapamiętania w przypadku tych funkcji iteracyjnych jest to, że uruchamiają one logikę w każdym pojedynczym wierszu i zapisują wynik w pamięci.
Po zapisaniu wszystkich tych wartości w pamięci wykonywane jest nadrzędne obliczenie — na przykład SUMA lub ŚREDNIA .
Wracając do naszego przykładu, tutaj widać, że kwota w tej kolumnie jest nieco mniejsza niż w poprzednich kolumnach.
Za pomocą funkcji iteracyjnej SUMX chcę przeglądać każdy pojedynczy wiersz w tabeli Sales. W każdym rzędzie chcę obliczyć, czy ta konkretna sprzedaż przekracza 2000 USD. Jeśli tak, chcę obliczyć całkowitą sprzedaż dla tego wiersza. Ale jeśli suma sprzedaży wyniosła mniej niż 2000 USD, chcę zwrócić zero. Więc chcę tylko obliczyć sprzedaż o wyższej wartości.
Niektórzy zasugerują, że mógłbym po prostu umieścić logikę w kolumnie obliczeniowej. Ale nie chcemy tego robić, ponieważ istnieje znacznie lepszy sposób na uruchomienie tej logiki w języku DAX niż umieszczanie jej fizycznie w kolumnie.
Iteracja po tabelach
W tym miejscu funkcje iteracyjne są naprawdę niesamowite. Możesz nie tylko iterować po fizycznej tabeli, tak jak robiliśmy to wcześniej, ale możesz także iterować po innej wirtualnej tabeli, którą wprowadzasz jako parametr.
Będziemy myśleć, że każdy wynik tutaj ma określony kontekst. W tym konkretnym przypadku mamy do czynienia z kontekstem klienta.
W tym kontekście chcę przejść przez każdą lokalizację i sprawdzić, czy dany klient osiągnął sprzedaż powyżej 5000 USD.
Jeśli tak, chcę obliczyć całkowitą sprzedaż. Ale jeśli nie, chcę, żeby zwrócił zero.
Tak więc w tym konkretnym przypadku obliczam lokalizacje o wysokiej wartości, w których kupuje ten klient, oraz łączną sprzedaż, jaką realizuje w tych lokalizacjach.
To, co robi tutaj VALUES , to tworzenie wirtualnej tabeli. Więc SUMX nie działa tutaj nawet nad niczym fizycznym. W rzeczywistości pracuje nad czymś, co jest całkowicie wirtualne.
Prosta iteracja przy użyciu MINX
Jest to podobne do poprzednich przykładów, ale zamiast SUMX uruchomimy jakiś inny rodzaj agregacji, gdy przejdziemy przez każdy pojedynczy wiersz.
W tym konkretnym przypadku zapisujemy każdą lokalizację dla każdego klienta i obliczamy łączną sprzedaż dla każdej z tych lokalizacji.
Następnie chcemy zwrócić bardzo minimalną kwotę lokalizacji, w której zakupili.
Prosta iteracja przy użyciu MAXX
Robię tutaj również coś podobnego, aby pokazać wszechstronność funkcji iteracyjnych. Przechodzę przez każdą lokalizację, patrząc na ich sprzedaż, ale potem zwracam maksymalną sprzedaż w tych lokalizacjach, dlatego widzimy tutaj wyższe liczby.
Wniosek
Kluczową rzeczą, którą chciałem poruszyć w tym artykule, jest zakres opcji, które masz w funkcji iteracyjnej w porównaniu z prostą sumą lub średnią.
Gdy zaczniesz zagłębiać się w bardziej złożone obliczenia, zobaczysz, jak ważne są te konkretne funkcje, aby zwracać wartości na poziomie kontekstu.
Jest tak wiele wszechstronności i tak wiele sposobów, że możesz przeprowadzić te obliczenia za pomocą prostej formuły, jeśli tylko wiesz, jak manipulować parametrami.
Jeśli zapoznanie się z tymi funkcjami iteracyjnymi sprawiło Ci przyjemność , możesz przejrzeć te łącza, aby uzyskać więcej informacji na ten temat:
Kluczowe pojęcia dotyczące funkcji iteracyjnych w usłudze LuckyTemplates
Miłej pracy z tym.
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.