Usuwanie wierszy zaśmiecających nasze dane

Rozpatrzmy taki oto przypadek:

Mamy niby zwykły plik CSV z listą pracowników, ale co kilkanaście rekordów znajduje się kilka linijek nie będących danymi, zawierającymi jakieś słowne komentarze dotyczące wydarzeń z życia firmy. Chcemy te dane oczyścić, ale tutaj nie możemy użyć narzędzia usuń X pierwszych wierszy. Również kolumna indeksu i usuwanie konkretnych wierszy (16,17,18,19 itp.) nie wchodzi w grę, bo skąd nie wiemy, czy w przyszłości nie dojdą nowe wiersze zaburzające nasze dane?

Zaimportuj plik o nazwie usuwanie X pierwszych wierszy.csv do Edytora Power Query, wtedy łatwiej będzie zauważyć pewną rzecz.

Sposób 1 – wygenerowanie błędów i usunięcie błędnych komórek

Tutaj idea będzie nieco inna. Otóż zauważmy, że w pierwszej kolumnie mamy liczbę porządkową (wartości typu liczba całkowita). Wystarczy przekonwertować pierwszą kolumnę na liczby, a tam gdzie znajduje się tekst wyskoczą błędy. Wystarczy wtedy odfiltrować komórki z błędami i gotowe!

Edytor Power Query automatycznie dodał dwa kroki: nagłówki o podwyższonym poziomie (czyli domyślił się, że pierwszy wiersz w pliku CSV zawiera nazwy kolumn) oraz Zmieniono typ. Tutaj niestety, ale Power Query nie do końca się domyślił co i jak, gdyż kolumna l.p. ma ustawiony typ tekstowy a nie liczbowy (ze względu na owe zaśmiecające wiersze). Usuńmy ten krok.

Następnie w kolumnie l.p. zmieńmy z Tekstowego na Liczba całkowita.

W wierszach, gdzie wcześniej znajdował się tekst w kolumnie l.p. pojawi się (error)

Teraz należy odfiltrować komórki zawierające błędy – w tym celu na nagłówku kolumny l.p. należy kliknąć prawym przyciskiem myszy i wybrać opcje Usuń błędy

Następnie należy dla kolumn Wiek i Wzrost ustawić typ danych na Liczba całkowita.

W ostatnim kroku należy wybrać z karty Narzędzia główne polecenie Zamknij i załaduj.

Sposób 2 – usunięcie komórek zawierających nulle w kolumnie np. Wzrost

Zauważmy, że tuż po zaimportowaniu danych Power Query w kolumnach Wiek i Wzrost zmienił typ danych na Liczba całkowita. W tych wierszach w których w pierwszej kolumnie (l.p.) znajdowały się „śmieci” to w kolumnach Wiek i Wzrost pojawiają się wartości null.

Tak więc można odfiltrować te komórki, które w dowolnej z tych dwóch kolumn zawierają wartości null i w kolumnie l.p. zmienić typ danych na liczba całkowita.

Sposób ten by nie zadziałał, gdyby wszystkie kolumny w naszym pliku CSV zawierały tylko wartości tekstowe.

Strona główna