DNI
GODZIN
MINUT
SEKUND
DO STARTU:

Eksport danych z Power Query przy pomocy R

Jeden z czytelników bloga zapytał, jak dane z Power Query wyeksportować do pliku CSV. Póki co nie ma na to jednego przycisku, którym zapisalibyśmy tylko dane wyjściowe już po transformacjach. Jest na to inny sposób: wykorzystaj R w Power Query po stronie Power BI Desktop! Pokażę Ci, jak zapisać dane za pomocą R do formatów .csv oraz .xlsx. Aby korzystać ze skryptów R, musisz mieć zainstalowany na komputerze R. Najnowszą wersję R możesz pobrać ze strony R Project.

O przygotowanych danych

Dane do przykładu pochodzą ze zbiorów Kaggle i dotyczą parametrów i ocen win ze strony WineEnthusiast. Cały zbiór liczy prawie 130 tysięcy rekordów, ale załóżmy, że do dalszych analiz będą potrzebne wina tylko z kilku krajów, lat i typów, w związku z czym zbiór zawęzi się do nieco ponad 20 tysięcy obserwacji.

Eksport danych z Power Query przy pomocy R 1

Włącz skrypt R

Aby móc pracować wykorzystując skrypt R, w Edytorze Power Query przejdź do zakładki Przekształć > Skrypty > Uruchom skrypt języka R. Gdy wejdziesz w skrypt R, pojawi się konsola, w której możesz pisać swój kod.

Eksport danych z Power Query przy pomocy R 2

Po otwarciu skryptu R dostajesz informację, że jeśli chcesz odwoływać się w kodzie do swojego zbioru danych, użyj nazwy ‘dataset’. Będzie to potrzebne przy wywoływaniu funkcji.

Eksport danych z Power Query przy pomocy R 3

Od teraz możesz napisać swój własny kod. Zaczniemy od ustawienia lokalizacji, do której chcemy wyeksportować plik komendą setwd.

Eksport danych z Power Query przy pomocy R 4

Pamiętaj, by wstawić podwójne ukośniki, jako że pojedynczy backslash w R to znak specjalny!

Eksport danych do formatu csv

Zapisanie pliku csv nie wymaga żadnego dodatkowego pakietu i można to zrobić jedną linijką kodu. Istnieje sporo funkcji, umożliwiających zapisanie pliku tekstowego, szczególnie csv. Podstawową jest write.table. Jako pierwszy argument podajemy nazwę zbioru danych, który chcemy zapisać, a następnie w nawiasie nazwę pliku (z rozszerzeniem), jaki chcemy utworzyć. Taka sama składnia obowiązuje w funkcjach write.csv oraz write.csv2. Same funkcje różnią się ustawieniami wyjściowymi: write.csv wykorzystuje przecinek jako separator kolumn i kropkę jako separator dziesiętny, a write.csv2 średnik jako separator kolumn i przecinek jako separator dziesiętny.

Eksport danych z Power Query przy pomocy R 5

Poniżej zrzut z Excela po otwarciu plików csv.

Eksport danych z Power Query przy pomocy R 6

Eksport danych do formatu xlsx

Import bezpośrednio do formatu Excela wymaga już zainstalowania pakietu. Jednym z popularniejszych jest xlsx, ale przy instalacji często wyskakuje przy nim błąd związany z Javą. Aby tego uniknąć, można skorzystać z pakietu openxlsx. Funkcja do eksportu nazywa się write.xlsx i działa analogicznie jak funkcje do eksportu w formacie csv. Na początku zainstaluj w R pakiet openxlsx komendą install.packages(„openxlsx”) w konsoli R lub w R Studio.

Eksport danych z Power Query przy pomocy R 7

W skrypcie R w Power BI wykonaj funkcję write.xlsx. Pamiętaj, by w nawiasie z nazwą dopisać odpowiedni format pliku!

Eksport danych z Power Query przy pomocy R 8

Po kliknięciu OK w Twojej lokalizacji pojawi się plik Excela.

Eksport danych z Power Query przy pomocy R 9

Coraz więcej możliwości

R był pierwszym dodatkowym polem skryptu, który można włączyć w Power Query. Nie tak dawno do grona obsługiwanych języków dołączył Python. Znasz Pythona? Super! Możesz tak samo pisać w nim skrypty i wykonywać je w Power Query. Powodzenia!

Udostępnij ten wpis:

Brak komentarzy

    • Hej Dawid, ta opcja jest dostępna, ale tylko w Power Query po stronie Power BI. Dodatkowo w opcjach globalnych Power BI potrzebujesz zdefiniować, gdzie zainstalowany jest R.

  1. czyli rozumiem, że jak ma raport w Excelu + PQ to nie dam rady go w żaden sposób wyeksportować jako CSV? 🙁

    • Niestety nie. Jedyne pomysły: zapisać plik Excel jako CSV (pod warunkiem, że wierszy jest mniej niż 1 milion rekordów) lub skopiować zapytania z Excel Power Query do Power BI Power Query i wtedy skorzystać z opcji R.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *