Czy praca na danych kojarzy Ci się z frustrującym ręcznym wklejaniem i oczyszczaniem danych w Excelu? A może tracisz mnóstwo energii na importowanie nieuporządkowanych danych pochodzących z różnych źródeł? Być może podejrzewasz, że Twoje arkusze kryją mnóstwo wartościowych informacji, ale nie wiesz, w jaki sposób je wydobyć i ile godzin musisz na to poświęcić? A może spędzasz sporo czasu na tworzeniu skomplikowanych raportów w Power BI lub programowaniu baz danych SQL Server? Dzięki wiedzy zawartej w tej książce wykonasz te zadania prościej i szybciej, a efekty będą o wiele bardziej niezawodne!
Ten praktyczny przewodnik po narzędziu Power Query nauczy Cię efektywnie przetwarzać dane w Excelu: importować, oczyszczać, przekształcać i wydobywać potrzebne informacje. Dowiesz się, jak sprawnie wykonywać typowe zadania i prace analityczne, jak zwiększyć swoją skuteczność dzięki opanowaniu podstaw języka M oraz jak zautomatyzować proces przygotowywania danych do przetwarzania. Zapoznasz się z możliwościami Microsoft Cognitive Services oraz konektora Power Query Web, a także z wykorzystaniem sztucznej inteligencji do rozpoznawania treści tekstu. Nabyte umiejętności będziesz mógł przetestować w realistycznym projekcie, któremu poświęcono ostatni rozdział!
W książce między innymi:
- solidne podstawy pracy z narzędziem Power Query
- automatyzacja operacji na danych
- proste i zaawansowane techniki dekompozycji tabel
- tworzenie procedur w języku M
- pozyskiwanie informacji z danych tekstowych i sieci społecznościowych
Power Query i Power BI: sprostasz wyzwaniu przetwarzania danych!
Rozdziały:
O ilustracjach
Przedmowa
O autorze
Podziękowania
Wprowadzenie
- Dla kogo jest ta książka?
- Układ książki
- Pliki dołączone do książki
- Wymagania systemowe
Rozdział 1. Wprowadzenie do Power Query
- Czym jest Power Query?
- Historia Power Query w skrócie
- Gdzie znajduje się Power Query?
- Główne komponenty Power Query
- Pobieranie danych i tworzenie połączeń
- Najważniejsze elementy edytora Power Query
- Panel podglądu
- Wstążka
- Panel zapytań
- Ustawienia zapytań i zastosowane kroki
- Pasek formuły, zaawansowany edytor i język M
- Opcje zapytania w Excelu i Power BI Desktop
- Ćwiczenie 1.1. Pierwsze kroki z Power Query
- Podsumowanie
Rozdział 2. Podstawowe operacje przygotowywania danych
- Wyodrębnianie informacji z zakodowanych danych
- Fabryka Przygód
- Ćwiczenie 2.1. Stary sposób: formuły Excela
- Ćwiczenie 2.2. Część I. Nowy sposób
- Ćwiczenie 2.2. Część II. Scalanie tabel wyszukiwania
- Ćwiczenie 2.2. Część III. Tabele faktów i wyszukiwania
- Kolumna z przykładów
- Ćwiczenie 2.3. Część I. Kolumna z przykładów wprowadzenie
- Kolumna z przykładów w praktyce
- Ćwiczenie 2.3. Część II. Zamiana wielkości na oznaczenie zakresu
- Wyodrębnianie informacji z kolumn tekstowych
- Ćwiczenie 2.4. Wyodrębnianie odnośników z komunikatów tekstowych
- Operacje na datach
- Ćwiczenie 2.5. Operacje na różnych formatach dat
- Ćwiczenie 2.6. Operacje na datach z różnymi ustawieniami regionalnymi
- Wyodrębnianie elementów daty i czasu
- Przygotowanie modelu
- Ćwiczenie 2.7. Dzielenie danych na tabelę faktów i tabelę wyszukiwania
- Jeżeli nie uda się utworzyć relacji
- Ćwiczenie 2.8. Zamiana wartości oddzielonych ogranicznikami na wiersze
- Podsumowanie
Rozdział 3. Łączenie danych z kilku źródeł
- Łączenie kliku tabel
- Łączenie dwóch tabel
- Ćwiczenie 3.1. Rowery i akcesoria
- Ćwiczenie 3.2. Część I. Przekształcenie Dołącz zapytania jako nowe
- Ćwiczenie 3.2. Część II. Zależności między zapytaniami i odwołania
- Łączenie trzech lub więcej tabel
- Ćwiczenie 3.2. Część III. Rowery + Akcesoria + Komponenty
- Ćwiczenie 3.2. Część IV. Rowery + Akcesoria + Komponenty + Ubrania
- Łączenie tabel na szerszą skalę
- Łączenie tabel zapisanych w folderze
- Ćwiczenie 3.3. Łączenie skoroszytów z produktami zapisanymi w folderze
- Uwagi do importowania plików z folderu
- Łączenie arkuszy w skoroszycie
- Ćwiczenie 3.4. Łączenie arkuszy rozwiązanie
- Uniwersalna metoda łączenia arkuszy
- Podsumowanie
Rozdział 4. Łączenie niezgodnych tabel
- Problem z niezgodnymi tabelami
- Co to jest niezgodność tabel?
- Symptomy niezgodności tabel i związane z tym ryzyka
- Ćwiczenie 4.1. Uzgadnianie kolumn: podejście reaktywne
- Łączenie niezgodnych tabel zapisanych w folderze
- Ćwiczenie 4.2. Część I. Symptom braku wartości
- Ćwiczenie 4.2. Część II. Założenie takiej samej kolejności kolumn i ujednolicenie nagłówków
- Ćwiczenie 4.3. Proste ujednolicenie nagłówków za pomocą funkcji Table.TransformColumnNames
- Tabela konwersji
- Ćwiczenie 4.4. Transpozycja z użyciem tabeli konwersji
- Transpozycja
- Sekwencja scaleń
- Powtórna transpozycja
- Ćwiczenie 4.5. Anulowanie przestawienia, scalenie i powtórne przestawienie
- Ćwiczenie 4.6. Transpozycja samych nazw kolumn
- Ćwiczenie 4.7. Ujednolicenie nazw kolumn za pomocą języka M
- Podsumowanie
Rozdział 5. Pozyskiwanie kontekstu
- Pozyskiwanie kontekstu zawartego w nazwach plików i skoroszytów
- Ćwiczenie 5.1. Część I. Kolumna niestandardowa
- Ćwiczenie 5.1. Część II. Pozyskiwanie kontekstu z nazwy pliku lub arkusza
- Pozyskiwanie kontekstu z tytułów tabel przed ich połączeniem
- Ćwiczenie 5.2. Pozyskiwanie kontekstu z tytułów tabel za pomocą przekształcenia Drill Down
- Kod M operacji wyszczególnienia wartości komórki
- Umieszczenie wyniku wyszczególnienia w zapytaniu
- Ćwiczenie 5.3. Pozyskiwanie kontekstu z tytułów tabel podczas importowania plików z folderu
- Pozyskiwanie kontekstu z tytułów tabel po ich połączeniu
- Ćwiczenie 5.4. Pozyskiwanie kontekstu z tytułów tabel zapisanych w arkuszach jednego skoroszytu
- Wskazówki kontekstowe
- Ćwiczenie 5.5. Kolumna indeksu jako wskazówka
- Ćwiczenie 5.6. Wyszukiwanie informacji kontekstowych w pobliżu określonych komórek
- Podsumowanie
Rozdział 6. Dekomponowanie tabel
- Rozpoznawanie źle zaprojektowanych tabel
- Wprowadzenie do anulowania przestawienia
- Ćwiczenie 6.1. Przekształcenia Anuluj przestawienie kolumn i Anuluj przestawienie innych kolumn
- Ćwiczenie 6.2. Anulowanie przestawienia tylko zaznaczonych kolumn
- Przetwarzanie sum całkowitych
- Ćwiczenie 6.3. Dekompozycja tabeli zawierającej sumy całkowite
- Dekompozycja tabeli z hierarchią agregacji danych 2x2
- Ćwiczenie 6.4. Dekompozycja tabeli z hierarchią agregacji danych 2x2 i datami
- Ćwiczenie 6.5. Dekompozycja tabeli z hierarchią agregacji danych 2×2
- Przetwarzanie sum częściowych
- Ćwiczenie 6.6. Przetwarzanie sum częściowych
- Podsumowanie
Rozdział 7. Zaawansowane metody dekomponowania i agregowania tabel
- Dekomponowanie tabeli z wielopoziomową hierarchią agregacji danych
- Wirtualna tabela przestawna, pola wierszy i kolumn
- Ćwiczenie 7.1. Dekompozycja tabeli z hierarchią agregacji danych N×M
- Uogólnienie sekwencji przekształceń dekomponujących tabelę
- Ćwiczenie 7.2. Zaczynając od końca
- Ćwiczenie 7.3. Tworzenie funkcji FnDekomponujTabelę
- Część I. Utworzenie zapytań PolaWierszy, PolaKolumn i PoleWartości
- Część II. Usunięcie kroków zmieniających typ danych
- Część III. Funkcje Table.ColumnNames, List.FirstN i List.Count
- Część IV. Zmiana nazw kolumn i funkcja List.Zip
- Część V. Przekształcenie zapytania w funkcję
- Część VI. Testowanie funkcji
- Wnioski
- Przekształcenie Kolumna przestawna
- Ćwiczenie 7.4. Przywrócenie niewłaściwie zdekomponowanej tabeli
- Ćwiczenie 7.5. Agregowanie tabel z wielowierszowymi rekordami
- Część I. Przetwarzanie stałej liczby atrybutów z wykorzystaniem dzielenia bez reszty
- Część II. Przetwarzanie zmiennej liczby atrybutów za pomocą kolumny warunkowej i wypełnienia w dół
- Podsumowanie
Rozdział 8. Praca grupowa
- Pliki lokalne, parametry i szablony
- Niewłaściwe korzystanie z lokalnych plików
- Ćwiczenie 8.1. Zdefiniowanie parametru z nazwą ścieżki
- Ćwiczenie 8.2. Tworzenie szablonów w Power BI
- Ćwiczenie 8.3. Definiowanie parametrów w Excelu
- Ćwiczenie 8.3. Część II. Przebudowa kombinacji danych
- Praca nad współdzielonymi plikami i folderami
- Importowanie danych z plików zapisanych w usługach OneDrive dla Firm i SharePoint
- Ćwiczenie 8.4. Tworzenie zapytań łączących się z usługami OneDrive dla Firm i SharePoint
- Różnica pomiędzy usługami OneDrive dla Firm a SharePoint
- Ćwiczenie 8.5. Od lokalnych folderów do usługi SharePoint
- Zagadnienia bezpieczeństwa
- Usuwanie zapytań w drodze inspekcji skoroszytu Excela
- Podsumowanie
Rozdział 9. Wprowadzenie do języka M
- Nauka języka M
- Etapy opanowania języka M
- Etap 1. Tylko interfejs programu
- Etap 2. Nieznaczne modyfikacje kodu w pasku formuły
- Etap 3. Kolumny niestandardowe z kodem M
- Etap 4. Niestandardowe funkcje i zaawansowany edytor
- Etap 5. Zaawansowane iteracje (funkcje List.Accumulate i List.Generate)
- Etap 6. Swobodne kodowanie w zaawansowanym edytorze
- Informacje online
- Informacje offline
- Ćwiczenie 9.1. Zmienna #shared i dokumentacja wbudowanych funkcji
- Bloki konstrukcyjne w języku M
- Ćwiczenie 9.2. Witaj, świecie!
- Wyrażenie let
- Zakresy i scalanie wyrażeń z wielu zapytań
- Typy danych, operatory i wbudowane funkcje
- Podstawowe typy danych w języku M
- Typ number
- Typ time
- Typ date
- Typ duration
- Typ text
- Typ null
- Typ logical
- Typy złożone
- Typ list
- Operatory stosowane z listami
- Funkcje List.X
- Typ record
- Operatory stosowane z rekordami
- Funkcje Record.X
- Typ table
- Warunki i wyrażenia if
- Wyrażenie if-then-else
- Wyrażenie if wewnątrz wyrażenia let
- Funkcje niestandardowe
- Wywoływanie funkcji
- Wyrażenie each
- Zaawansowane tematy
- Obsługa błędów
- Leniwe i zachłanne przetwarzanie wyrażeń
- Pętle
- Rekurencja
- Funkcja List.Generate
- Funkcja List.Accumulate
- Podsumowanie
Rozdział 10. Od złych do dobrych zapytań
- Źródła pułapek i ich skutki
- Świadome działanie
- Dobre praktyki
- Modyfikacje formuł M
- Pułapka 1. Ignorowanie paska formuły
- Ćwiczenie 10.1. Wyszukiwanie w pasku formuły statycznych odwołań do nazw kolumn
- Pułapka 2. Zmiana typów danych
- Pułapka 3. Niebezpieczne filtrowanie
- Ćwiczenie 10.2. Część I. Filtrowanie czarnych produktów
- Działanie warunków w filtrach
- Ćwiczenie 10.2. Część II. Wyszukiwanie wartości w panelu filtru
- Pułapka 4. Zmiana kolejności kolumn
- Ćwiczenie 10.3. Część I. Zmiana kolejności wybranych kolumn
- Ćwiczenie 10.3. Część II. Niestandardowa funkcja FnZmianaKolejnościKolumn
- Pułapka 5. Usuwanie i wybieranie kolumn
- Ćwiczenie 10.4. Usunięcie niepotrzebnych kolumn
- Pomijanie brakujących kolumn
- Wybieranie i usuwanie kolumn znajdujących się w określonych miejscach
- Wybieranie i usuwanie kolumn o określonych nazwach
- Pułapka 6. Zmiana nazw kolumn
- Ćwiczenie 10.5. Zmiana nazw losowych kolumn
- Niestandardowa funkcja FnZmianaNazwWedługIndeksów
- Funkcja Table.TransformColumnNames
- Pułapka 7. Dzielenie kolumn
- Ćwiczenie 10.6. Niewłaściwy podział kolumny
- Pułapka 8. Scalanie kolumn
- Inne pułapki i techniki zapobiegawcze
- Podsumowanie
Rozdział 11. Podstawy analizy tekstu
- Wyszukiwanie słów kluczowych w kolumnach tekstowych
- Ćwiczenie 11.1. Proste wyszukiwanie słów kluczowych
- Wyszukiwanie słów kluczowych z użyciem iloczynu kartezjańskiego
- Ćwiczenie 11.2. Iloczyn kartezjański
- Część I. Przygotowanie
- Część II. Iloczyn kartezjański
- Część III. Relacje
- Część IV. Zwiększenie wydajności
- Ćwiczenie 11.3. Wyszukiwanie słów kluczowych za pomocą niestandardowej funkcji
- Jakiej metody użyć: zwykłego wyszukiwania, iloczynu kartezjańskiego czy niestandardowej funkcji?
- Dzielenie wpisów na słowa
- Ćwiczenie 11.4. Trywialne dzielenie wpisów na słowa
- Część I. Dzielenie według spacji
- Część II. Oddzielenie słów od znaków interpunkcyjnych
- Część III. Dzielenie wpisów według spacji i usuwanie znaków interpunkcyjnych
- Ćwiczenie 11.5. Odrzucenie stop-słów
- Ćwiczenie 11.6. Wyszukiwanie słów kluczowych w wyodrębnionych słowach
- Część I. Scalenie zapytań za pomocą sprzężenia wewnętrznego
- Część II. Wyszukiwanie wieloczłonowych słów kluczowych
- Ćwiczenie 11.7. Chmura słowna w Power BI Desktop
- Podsumowanie
Rozdział 12. Zaawansowana analiza tekstu: rozpoznawanie znaczenia
- Usługa Microsoft Azure Cognitive Services
- Klucze API i zasoby Azure
- Uzyskanie kluczy interfejsu Translator Text API
- Uzyskanie kluczy interfejsu Text Analytics API
- Uwagi dotyczące korzystania z usługi Azure Cognitive Services za pomocą edytora Power Query
- Liczba żądań wysyłanych do interfejsu API
- Prywatność i bezpieczeństwo danych
- Planowane odświeżanie raportów
- Tłumaczenie tekstu
- Opis interfejsu Translator Text API
- Ćwiczenie 12.1. Proste tłumaczenie
- Część I. Utworzenie treści żądania w formacie JSON
- Część II. Utworzenie parametru dla klucza API
- Część III. Przygotowanie żądania
- Udostępnianie raportu bez klucza API
- Ćwiczenie 12.2. Tłumaczenie wielu komunikatów
- Udostępnianie raportu bez ujawniania klucza API
- Analiza nastroju tekstu
- Czym jest interfejs Sentiment Analytics API
- Ćwiczenie 12.3. Implementacja niestandardowej funkcji FnOkreślenieNastroju
- Niestandardowa funkcja FnOkreślenieNastroju
- Część I. Załadowanie danych
- Część II. Przygotowanie komunikatów
- Część III. Przekształcenie tabeli do formatu JSON
- Część IV. Przygotowanie klucza API
- Część V. Wysłanie żądania do interfejsu API
- Część VI. Przetworzenie odpowiedzi
- Część VII. Utworzenie niestandardowej funkcji
- Część VIII. Wywołanie funkcji FnOkreślenieNastroju
- Zapobieganie błędom
- Ćwiczenie 12.4. Przetwarzanie dużych ilości danych
- Wyodrębnianie kluczowych fraz
- Ćwiczenie 12.5. Przystosowanie kodu do wyodrębniania kluczowych fraz
- Obsługa wielu języków
- Zmiana oznaczenia języka
- Dynamiczne wykrywanie języka
- Ćwiczenie 12.6. Przystosowanie kodu do wykrywania języka
- Podsumowanie
Rozdział 13. Analiza sieci społecznościowych
- Pierwsze kroki z konektorem do Facebooka
- Ćwiczenie 13.1. Uzyskiwanie informacji o ulubionych stronach
- Analiza sieci znajomych
- Ćwiczenie 13.2. Wyszukiwanie bezpośrednich i pośrednich znajomych za pomocą Power BI
- Ćwiczenie 13.3. Wyszukiwanie stron, które polubili znajomi
- Analiza stron na Facebooku
- Ćwiczenie 13.4. Proste odczytywanie wpisów i komentarzy ze stron Facebooka
- Krótka dygresja: pobieranie danych za wybrany okres
- Ćwiczenie 13.5. Analiza aktywności użytkowników: zliczanie komentarzy i udostępnień
- Ćwiczenie 13.6. Analiza porównawcza stron
- Podsumowanie
Rozdział 14. Końcowy projekt: wszystko razem
- Ćwiczenie 14.1. Ratowanie sytuacji u Światowych Importerów
- Wskazówki
- Część I. Przygotowanie danych
- Część II. Dekompozycja tabel
- Część III. Agregacja danych za 2018 r.
- Część IV. Scalenie przychodów za lata 2015 2017 i za rok 2018
- Ćwiczenie 14.2. Porównanie tabel i śledzenie hakera
- Wskazówki
- Rozwiązanie
- Szukanie śladów hakera w zmienionej tabeli