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 chcę omówić niezbyt niezwykłą sytuację związaną z wieloma moimi zadaniami konsultacyjnymi dla rządu kanadyjskiego, gdzie moi klienci wymagają, aby wszystkie publikacje były dwujęzyczne lub dostępne w obu językach urzędowych, angielskim i francuskim. W tym samouczku pokażę, jak robię wielojęzyczny raport usługi LuckyTemplates. Możesz obejrzeć pełny film z tego samouczka na dole tego bloga.
Chociaż potrzebna była dodatkowa infrastruktura i rozwój, można to łatwo osiągnąć za pomocą raportów SSRS. Istnieją jednak pewne ograniczenia, jeśli próbujesz zrobić to samo z usługą LuckyTemplates.
Chcę zaprezentować częściowo ręczne obejście, którego ostatnio używałem, i jestem zainteresowany tym, jak inni poradzili sobie z tym samym problemem, więc zostaw swoje doświadczenia w sekcji komentarzy poniżej.
Spis treści
Dwa obszary wielojęzycznego raportu usługi LuckyTemplates
Przy opracowywaniu wielojęzycznych raportów istnieją dwa główne obszary, które wymagają przetłumaczonych wartości: dane raportu i etykiety raportu .
Jeśli chodzi o dane, jeśli ktoś jest odpowiedzialny za tworzenie wielojęzycznych raportów, można mieć nadzieję, że uzyska dostęp do źródła danych, które już zawiera tłumaczenia wartości tekstowych danych. Jeśli chodzi o etykiety, często potrzebne jest osobne tłumaczenie.
Przykład, który dziś pokażę, wykorzystuje podejście wielojęzyczne z rozwiązaniami do prezentowania raportów w języku angielskim, francuskim lub hiszpańskim. Stworzyłem mały przykładowy zestaw danych, ale proszę traktować wszystkie tłumaczenia z przymrużeniem oka.
Nie twierdzę, że którekolwiek z tych tłumaczeń jest odpowiednie, ale raczej są wynikiem działania podstawowych narzędzi tłumaczeniowych online. Tłumaczenia tutaj mają jedynie pomóc zilustrować technikę i są prezentowane w celach czysto edukacyjnych.
Wymagania dotyczące danych wielojęzycznego raportu usługi LuckyTemplates
Będziemy mieć repozytorium danych i tłumaczeń do zaprezentowania oraz skoroszyt programu Excel z zakładkami dla każdego typu danych.
Najpierw potrzebujemy tabeli dla języków, które będziemy obsługiwać…
… i kolejna zakładka do tłumaczeń etykiet, które zostaną użyte w raporcie.
Następnie będziemy potrzebować tłumaczeń kolumn, których będziemy używać w naszych wizualizacjach.
I wreszcie, będziemy potrzebować źródła danych, w którym wszystkie nasze wiersze tabeli faktów nie będą zawierały informacji o wymiarach, ale raczej klucze do wymiarów.
Następnie potrzebujemy zestawu wymiarów z tłumaczeniami dla wszystkich wartości ciągu w każdym z języków, które będziemy obsługiwać.
Ładowanie danych do usługi LuckyTemplates
To tyle jeśli chodzi o dane. Teraz załadujmy i wymodelujmy nasze dane w usłudze LuckyTemplates. Otworzymy Power Query i zobaczymy, że mamy tabelę dla każdej z kart, które były wcześniej w arkuszu kalkulacyjnym Excel.
Załadowałem również z forum LuckyTemplates.
Modelowanie danych
Przejdźmy do widoku modelowania i spójrzmy na prosty model danych, który mamy. Tutaj widzimy standardowy układ kaskadowy z wymiarami na górze , tabelą faktów pośrodku , tabelami miar po prawej stronie i tabelami pomocniczymi w dolnej części .
Następnie będziemy potrzebować zestawu miar translacji, po jednej dla każdej etykiety, którą będziemy wyświetlać w naszym raporcie. Miary te uwzględnią język wybrany w naszym krajalniku języka, a następnie zwrócą odpowiednią wartość dla wybranego języka.
Oto przykład. W żadnym wypadku nie jest to zoptymalizowany język DAX ; ale raczej miara napisana dla jasności.
Ten środek robi trzy rzeczy. Najpierw ustawia nazwę etykiety, którą będziemy obliczać. Wyszukuje wszystkie trzy wartości dla etykiety, a następnie używa prostej logiki , aby zwrócić odpowiednią objętość etykiety.
Tworzenie fragmentatora z pojedynczym wyborem dla kodów językowych
Rzućmy okiem na naszą podstawową konfigurację strony, czyli stronę w języku angielskim. Pierwszą rzeczą, którą musimy zrobić, to dodać do strony pojedynczy fragmentator wyboru dla dostępnych kodów językowych.
Możesz zobaczyć, w jaki sposób kod języka pochodzi z tabeli Języki i jak został ustawiony dla pojedynczego wyboru.
Dodawanie przycisków nawigacji
Następną rzeczą, którą zrobimy, będzie dodanie trzech przycisków nawigacyjnych w prawym górnym rogu raportu.
Otwórzmy okienko wyboru, a następnie otwórzmy grupę nagłówków i kliknij przycisk dla języka francuskiego. Widzimy, że ten przycisk ma typ akcji nawigacji po stronie i jego miejsce docelowe jako stronę francuską .
To samo dotyczy hiszpańskiego. Typ akcji to nawigacja po stronie , a jej celem jest strona hiszpańska .
Dodanie pola tytułu
Następną rzeczą, którą zrobimy, będzie dodanie pola tekstowego tytułu. Po prostu kliknij pole Tekst na karcie Strona główna i dodaj wartość dla tytułu raportu.
Następnie dla drugiej wartości dodamy podtytuł.
Teraz możemy zobaczyć, że wartości zmieniły się, gdy przełączamy się z jednego języka na drugi.
Dodawanie Wizualizacji Karty
Następnie dodamy tutaj grafikę karty.
Za pomocą tej karty dodamy do niej wybrany kod języka.
Następnie wyłącz kategorię i włącz tytuł .
W przypadku tekstu tytułu użyjemy opcji wyboru na podstawie jednej z moich miar tłumaczenia i umieścimy etykietę tytułu karty językowej.
Ponownie widzimy, że wartość zmienia się w zależności od języka wybranego na slicerze.
Na koniec dodamy tabelę transakcji. Dodałem już kolumny Identyfikator transakcji i Data .
Dodamy również miary translacyjne dla Produktu, Statusu, Prowincji, Kraju i Kontynentu.
Użyliśmy tutaj również tytułu tabeli transakcji.
Po obsłużeniu zmian danych i utworzeniu naszej strony podstawowej dla języka angielskiego zduplikujemy ją dla języka francuskiego i zmienimy jej nazwę na French2 .
Następnie zmienimy fragmentator języka i będziemy mogli zobaczyć, czy dane zmieniają się odpowiednio. Oznacza to, że do tego momentu rozwiązanie pozostaje dynamiczne.
Ale być może zauważyłeś, że nazwy kolumn w tabeli transakcji są nadal w języku angielskim. W tym miejscu musimy wykonać trochę pracy ręcznej, indywidualnie zmieniając nazwy kolumn i edytując tekst w okienku pól.
Jeśli wrócimy do naszego arkusza kalkulacyjnego tłumaczeń, pamiętaj, że mamy zakładkę dla kolumn i mamy tłumaczenia dla różnych nazw kolumn.
Chwycimy francuski tekst odpowiadający angielskiej kolumnie, a następnie odpowiednio zmodyfikujemy nazwę. Najpierw wykonamy kolumnę produktu, wybierając i kopiując tę wartość…
… Następnie wróć do LuckyTemplates i wklej wartość, aby zmienić kolumnę product z Product na Produit.
To samo zrobimy dla Statusu. Wrócimy do arkusza kalkulacyjnego i skopiujemy francuskie słowo oznaczające stan do schowka…
… następnie wklej go w okienku Pola.
Cały proces to operacja kopiowania i wklejania, którą powtórzymy dla pozostałych kolumn, a także dla strony hiszpańskiej.
Publikowanie wielojęzycznego raportu usługi LuckyTemplates
Aby sfinalizować konfigurację PBX, upewnijmy się, że mamy tylko jedną widoczną stronę w języku angielskim, podczas gdy strony francuska i hiszpańska są ukryte.
Teraz przejdziemy dalej i wdrożymy raport w naszym wielojęzycznym obszarze roboczym w usłudze LuckyTemplates.
Gdy skończymy, przejdziemy do usługi LuckyTemplates i otworzymy właśnie wdrożony raport.
Mamy nasze przyciski nawigacyjne w prawym górnym rogu. Jeśli kliknę francuski lub hiszpański, raport zostanie odpowiednio przedstawiony w wybranym języku.
Modyfikowanie raportu dla pojedynczego języka
Mamy więc do czynienia z pojedynczym raportem, który użytkownik może wyświetlić w preferowanym języku. Ale mogą się również zdarzyć przypadki, w których użytkownik nie chce tego robić i woli bezpośrednio otworzyć raport dla konkretnego języka.
W takim przypadku możemy wykorzystać pojedynczy raport, który już mamy, i zachować trzy jego kopie, jedną w języku angielskim, jedną w języku francuskim i jedną w języku hiszpańskim. Następnie możemy kolejno otwierać każdy raport i usuwać przyciski nawigacyjne. Będziemy również musieli zmodyfikować każdy raport, aby mieć pewność, że widoczny jest tylko odpowiedni język.
Interesujący nas raport możemy otworzyć bezpośrednio w usłudze LuckyTemplates.
Plusy i minusy każdej wielojęzycznej metody raportowania
Rozwiązanie z pojedynczym raportem wykorzystuje jeden raport. Tak więc cały kod znajduje się w jednym miejscu, a do aktualizacji jest tylko jedna centrala PBX. Wykorzystuje pojedynczy zestaw danych, więc dane są ładowane tylko raz. Ma jednak kilka ograniczeń. Jest statyczny i aktualizacja nazw będzie wymagać ręcznej pracy. Jeśli pojawią się również przyszłe aktualizacje, po otwarciu użytkownik musi wybrać język, który go interesuje.
W przypadku rozwiązania z wieloma raportami użytkownik końcowy ma mniej pracy i może natychmiast otworzyć interesujący go raport. Po stronie ograniczeń wykorzystuje wiele raportów, więc kod jest powtarzany, a różne wersje również mogą się nie zsynchronizować.
Rozwiązanie z wieloma raportami wykorzystuje kopię zestawu danych dla każdego języka, więc jest również niepożądane z punktu widzenia przestrzeni usługowej. Kolejnym ograniczeniem jest to, że jest to więcej pracy dla programisty, ponieważ wersja podstawowa musi być aktualizowana. Cały proces wdrażania wielu raportów należy powtarzać za każdym razem, gdy wprowadzane są zmiany w projekcie.
Osobiście preferuję metodę pojedynczego raportu, ale ostatecznie właściwe rozwiązanie jest decyzją biznesową i będzie podyktowane przez klienta.
Wniosek
Mam nadzieję, że nauczyłeś się czegoś z tego obejścia dotyczącego prezentacji wielojęzycznego raportu usługi LuckyTemplates. Jeśli podobała Ci się zawartość omówiona w tym samouczku, zasubskrybuj kanał telewizyjny i sprawdź pozostałą część naszej witryny sieci Web, w której znajduje się mnóstwo zasobów, które pozwolą Ci przenieść swoje umiejętności usługi LuckyTemplates na wyższy poziom.
Greg
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.