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 dzisiejszym blogu omówię pytanie, które cały czas pojawia się na forum LuckyTemplates . Jak poprawnie posortować pola z rozszerzonych kolumn tabeli dat ? Możesz obejrzeć pełny film tego samouczka na dole tego bloga.
Odnosi się to do rozszerzonej tabeli dat z prezentacji kodu M opracowanej przez Melissę Dekorte, jednego z naszych ekspertów
Nasz przykład w tym poście na blogu to po prostu prosta aplikacja, która działa od 2018 do 2020 roku z rokiem podatkowym rozpoczynającym się w lipcu. Członek chciał dowiedzieć się, jak sortować nazwę miesiąca; próbowali także posortować jedno z pól związanych z miesiącem.
W ten sposób można skutecznie posortować kolumnę tabeli dat .
Nasza rozszerzona tabela dat zawiera wiele pól; szczerze mówiąc, czasami trudno je utrzymać w porządku.
Dlatego stworzyliśmy ściągawkę, która pokazuje, jak wygląda każde z pól, a także ich format i zawartość w danym dniu.
W większości przypadków możesz użyć tego, aby dowiedzieć się, jak posortować jedno pole na podstawie innego.
Mamy nazwę miesiąca , a członek forum próbował użyć MonthnYear , aby to uporządkować.
Znajdźmy nazwę miesiąca w naszej rozszerzonej tabeli dat. Wybierz pozycję Nazwa miesiąca w okienku Pola, a następnie przejdź do Sortuj według kolumny i poszukaj MiesiącRok .
Kiedy to klikniemy, pojawia się komunikat o błędzie, który mówi, że nie możemy mieć więcej niż jednej wartości w MonthnYear dla tej samej wartości w Month Name.
Sprowadza się to do problemu ziarnistości. Potrzebujesz relacji jeden do jednego między polem, które próbujesz posortować, a polem, według którego sortujesz.
W tym przypadku dla danego miesiąca w latach 2018, 2019 i 2020 możemy mieć trzy różne wartości pola MonthnYear . Dlatego musimy znaleźć taki, który ma relację jeden na jeden.
Jeśli wrócimy do naszej ściągawki, zobaczymy, że MonthofYear to tylko numer miesiąca. Będzie to miało związek jeden do jednego, którego szukamy. Oznacza to, że styczeń będzie odpowiadał 1, luty 2 i tak dalej.
Jeśli klikniemy Sortuj według kolumny i posortujemy według miesiąca roku, otrzymamy prawidłowe posortowanie kolumn pola lub tabeli.
Następny, Miesiąc i rok , jest nieco trudniejszy. Jest to pole złożone, które ma krótki miesiąc i rok.
Musimy znaleźć coś, co sortuje najpierw według roku, a następnie według miesiąca. Jeśli klikniemy MonthnYear w okienku Fields i przejdziemy do Sort by Column , MonthnYear , którego pierwotnie próbowaliśmy użyć, będzie idealnie pasował.
Możesz zobaczyć, że w kolumnie tabeli Miesiąc i rok wszystko poukładało się idealnie.
Więc teraz mamy zrobione pierwsze dwa. Jednak to ostatnie jest naprawdę niegrzecznym polem.
Jest to problematyczne z kilku powodów. Mamy dwa połączone ze sobą pola tekstowe, a pole miesiąca obrachunkowego nie jest wypełnione.
Ostatecznie chcemy osiągnąć coś podobnego do tego MonthnYear , gdzie mamy czterocyfrowy rok podatkowy, a następnie nasz dwucyfrowy miesiąc podatkowy uzupełniony po tym.
Najprostszym sposobem na to jest użycie zapytania o moc .
Idziemy do Przekształć dane .
Następnie przechodzimy do naszej tabeli Daty i dodajemy kolumnę niestandardową.
Nazwijmy tę kolumnę niestandardową Sortowanie miesiąca obrachunkowego roku obrachunkowego (Sortowanie FYFM).
Zaczniemy od naszego prefiksu tekstowego, którym jest 20 dla pierwszych dwóch cyfr naszego roku, a następnie połączymy to z funkcją o nazwie Tex.Middle . Ta funkcja pobiera podłańcuch z większego ciągu tekstowego. Jest to analogiczne do funkcji MID języka DAX i pokażę różnicę między nimi.
Użyjemy tego w naszym polu roku podatkowego.
W języku DAX, gdy pobieramy podciągi, jest to indeks oparty na jedynkach. Aby wyciągnąć trzeci znak, będziemy musieli użyć 3. W Power Query jest to indeks od zera, więc trzecim znakiem będzie 012.
Zaczynamy od 2, czyli trzeciego znaku. Chcemy zwrócić dwa znaki, aby usunąć drugą parę cyfr z pola roku podatkowego.
Następnym krokiem jest połączenie tego z naszym wypełnionym polem miesiąca obrachunkowego.
W języku DAX będziemy musieli użyć funkcji LENGTH i funkcji JEŻELI, wtedy możemy ręcznie wypełnić.
W Power Query jest funkcja, która to wszystko robi. To jest Text.PadStart .
Ponieważ okres obrachunkowy jest polem numerycznym, będziemy musieli użyć funkcji o nazwie Text.From , aby przekonwertować wartość liczbową na wartość tekstową, którą możemy uzupełnić. Następnie wyciągniemy nasze pole okresu obrachunkowego.
Chcemy się upewnić, że ma 2 znaki. W przypadkach, gdy ma 1 znak, uzupełnimy go o 0.
Gdy klikniemy przycisk OK , będziemy mieli nasz czterocyfrowy rok podatkowy, a następnie nasz dwucyfrowy wypełniony miesiąc podatkowy.
Następnie wrócimy do strony głównej i klikniemy Zamknij i zastosuj .
Jeśli posortujemy nasze pole FM & FY według kolumny, będzie ono teraz idealnie sortowane według roku obrachunkowego, a następnie miesiąca obrachunkowego.
Wniosek
W tym blogu omówiłem technikę sortowania kolumn tabeli dat w usłudze LuckyTemplates. Jest to dobra strategia dla trudnych pól, które powstały w wyniku zbudowania kilku niestandardowych funkcji. Mam nadzieję, że ten ogólny zestaw narzędzi okazał się pomocny w tworzeniu własnych raportów.
Jeśli jeszcze tego nie zrobiłeś, zasubskrybuj kanał LuckyTemplates TV , na którym w przyszłości pojawi się więcej treści.
Dzięki!
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.