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.
Chcę przedstawić grupę funkcji w usłudze LuckyTemplates zwaną funkcjami tabel . Funkcje te obejmują i , z których już korzystaliśmy lub o których wspominaliśmy w innych tematach.
Istnieje cała gama innych funkcji tabelarycznych , w tym funkcje takie jak , i . Nie będziemy jednak omawiać ich wszystkich.
Jeśli chcesz lepiej zrozumieć te funkcje, polecam pobranie i sprawdzenie niektórych bardziej szczegółowych pytań w Możesz obejrzeć pełny film tego samouczka na dole tego bloga.
Spis treści
Wizualizacja działania funkcji tabel
W tym artykule chcę pokazać, jak działają funkcje tabel .
Jeśli spojrzysz na ten przykład, trudno sobie wyobrazić, co ta funkcja FILTER faktycznie robi za kulisami.
Dzieje się tak, ponieważ po wywołaniu funkcji FILTER nie ma możliwości zobaczenia tabeli, która jest tworzona w tle.
Możemy jednak to zrobić, tworząc nową tabelę zawierającą tylko formułę.
Przede wszystkim możesz zduplikować tabelę, wprowadzając jej nazwę podczas tworzenia nowej tabeli, jak pokazano w tym przykładzie, w którym zduplikowałem tabelę Sales .
Jednak tutaj możesz również użyć funkcji tabelarycznych . To, co zrobię, to użyję FILTERU , umieść w tabeli Sales , a następnie ustaw kolumnę Quantity większą niż dwa , aby służyła jako wyrażenie filtrujące .
Oryginalna tabela Sales ma około 15 000 wierszy, ale teraz ma tylko 4700 wierszy , ponieważ wyniki zostały przefiltrowane, aby przeglądać tylko wyniki z Quantity większym niż dwa .
Aby pokazać inny przykład, ponownie użyję funkcji FILTRUJ , wstawię tabelę Products , użyję kolumny Nazwa produktu jako wyrażenia filtrującego i ustawię ją na „Produkt 100” , aby zwrócić tabelę z jednym produktem.
To właśnie dzieje się za kulisami, gdy formuła działa w tej tabeli.
Najpierw kontekst oceny został zastosowany w kolumnie Nazwa klienta . Następnie dodano funkcję FILTER , aby zapewnić dodatkowy kontekst, redukując tę tabelę Product do zaledwie Product 100 .
Następnie Produkt 100 jest filtrowany za kulisami, co automatycznie spływa do relacji z tabelą Sales , ostatecznie zwracając tabelę Sales zawierającą tylko Product 100 .
WARTOŚCI Funkcja Przykład
Chcę przedstawić Ci inną funkcję tabelową w usłudze LuckyTemplates o nazwie VALUES . Ta funkcja zwraca jednokolumnową tabelę z unikalnymi wartościami .
Na przykład w naszej tabeli Daty możemy uzyskać tabelę zawierającą tylko miesiące.
Aby to zrobić wystarczy, że użyję funkcji VALUES i wstawię kolumnę MonthName z tabeli Dates .
Inną rzeczą, którą możemy zrobić, to umieścić funkcję WARTOŚCI wewnątrz miar. Ale znowu trudno jest rozpoznać proces w ramach miary, ponieważ tak naprawdę nie możemy zobaczyć generowanych tabel.
Dlatego jest to dobra metoda oceny rzeczywistego działania tych funkcji tabelarycznych.
Ale co by było, gdybyśmy chcieli obliczyć średnią miesięczną sprzedaż dla każdej osoby ?
Nie jest od razu oczywiste, jak to zrobić, nie wiedząc, jak połączyć rzeczy, o których mówiliśmy wcześniej.
To, co zrobię, to utworzenie nowej miary o nazwie Średnia miesięczna sprzedaż . Ponieważ mamy do czynienia ze średnią, najprawdopodobniej najpierw przyjdzie nam do głowy użycie funkcji
Jednak w rzeczywistości musimy tutaj użyć funkcji , ponieważ do obliczenia średniej na poziomie miesięcznym wymagana jest funkcja iteracyjna .
W ramach funkcji iteracyjnej możesz umieścić tabelę jako jej pierwszy parametr . Jednak nie jesteś ograniczony tylko do korzystania z tabel fizycznych. Możesz także użyć funkcji tabeli .
Ponieważ VALUES jest funkcją tabelaryczną , użyję jej i wstawię do kolumny MonthInCalendar z tabeli Dates .
Funkcje iteracyjne wykonują iterację w tabeli, a tabela utworzona z VALUES do MonthInCalendar zawierałaby unikalne wartości miesięcy i lat .
Korzystanie z MonthInCalendar jest konieczne, ponieważ gdybyśmy zamiast tego użyli tylko kolumny MonthName , nie będzie ona działać w różnych latach.
Aby zakończyć tworzenie naszej miary, wstawię Total Sales po WARTOŚCI , aby posłużyć jako wyrażenie.
Aby uniknąć nieporozumień, przejdę do ekranu Dane , wybiorę tabelę dat i zmienię nazwę MonthInCalendar na Month & Year .
Następnie kliknę Sortuj według kolumny i posortuję według kolumny MonthInYear , aby upewnić się, że jest posortowana poprawnie.
Na koniec mogę teraz przeciągać i upuszczać nową miarę Średnia miesięczna sprzedaż , abyśmy mogli zobaczyć wartości.
Aby sprawdzić, co zrobiliśmy, funkcja VALUES zwraca kolumnę unikalnych wartości.
Bieżący kontekst klienta został najpierw przeanalizowany przez kolumnę Nazwa klienta . Następnie za kulisami stworzyłem jednokolumnową tabelę unikalnych wartości miesiąca i roku .
Wewnątrz AVERAGEX przejrzałem każdy miesiąc i rok, aby obliczyć łączną sprzedaż , jaką każdy klient dokonał w ciągu tych miesięcy i lat. Sprzedaże te są następnie zapisywane w pamięci dla każdego z miesięcy.
Na koniec wszystkie te obliczone wyniki zostały ostatecznie uśrednione, aby uzyskać średnią miesięczną sprzedaż .
Ten proces jest bardzo wszechstronny, ponieważ możesz umieścić Rok wewnątrz WARTOŚCI zamiast Miesiąca i Roku, aby obliczyć średnią roczną sprzedaż .
Ponadto nie jesteś ograniczony tylko do używania dat, ponieważ możesz również wpisać nazwę produktu , aby zamiast tego znaleźć średnią sprzedaż według produktu .
Możesz szybko znaleźć unikalne obliczenia, łącząc te techniki.
ALL Przykład funkcji
Chcę pokazać jeszcze jedną funkcję tabeli w usłudze LuckyTemplates o nazwie ALL , która jest również znana jako funkcja usuwania filtra .
Ta funkcja działa jak przeciwieństwo funkcji WARTOŚCI na wiele sposobów.
Aby pokazać przykład, utworzę nową miarę o nazwie All Customer Sales , użyję funkcji CALCULATE i wstawię Total Sales jako wyrażenie.
Następnie użyję funkcji ALL i wstawię ją do tabeli Klienci , ponieważ można w niej umieścić tabelę lub kolumnę .
Po przeciągnięciu nowej miary można zauważyć, że zapewnia ona te same wartości, co Suma w sekcji Total Sales .
Zasadniczo funkcja ALL usunęła wszelkie filtry w bieżącym kontekście tabeli Klienci .
Ponieważ w bieżącym kontekście mamy Nazwę klienta , funkcja ALL zignorowała wszelkie filtry z tabeli Klienci i zamiast tego zwróciła sumę wszystkich wyników .
Jak korzystać z funkcji CROSSJOIN — samouczek usługi LuckyTemplates i języka DAX
Funkcje iteracyjne w języku DAX — szczegółowy przykład
Zaawansowane porady dotyczące optymalizacji tabeli usługi LuckyTemplates
Wniosek
Omówiliśmy niektóre kluczowe funkcje tabeli i sposób ich działania w usłudze LuckyTemplates.
Dobre zrozumienie tych funkcji jest kluczowe, ponieważ w rzeczywistości można połączyć wiele z nich w tej samej formule.
Możesz tworzyć bardziej interesujące obliczenia, gdy zaczniesz przyzwyczajać się do kombinacji formuł.
Wszystkiego najlepszego,
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.