dplyr – szybkie wyświetlanie danych – tbl_df, sample_n, sample_frac

Język R zdobywa coraz większą popularność w kręgach związanych z szeroko pojętą analizą danych. Obecnie jest on zdecydowanym liderem w tej kategorii i raczej nic w najbliższej przyszłości nie zagrozi jego pozycji. Część z Was na pewno miała do czynienia w mniejszym lub większym stopniu z tym językiem, a po jego integracji z narzędziami platformy danych od Microsoft jego znaczenie w naszej codziennej pracy będzie nieprzerwanie rosło. R w pakiecie bazowym daje nam bardzo wiele możliwości manipulacji danymi, jednak można oczywiście używać dodatkowych bibliotek – jedną z najważniejszych w moim mniemaniu jest pakiet dplyr.

Pakiet ten daje ogromne możliwości jeśli chodzi o działanie na danych, dużą część czynności zdecydowanie upraszcza, a kod wykorzystujący jego funkcje jest przejrzysty i wydajny. Jak on działa? Postaram się to przedstawić w kilku kolejnych artykułach. Przy okazji chciałbym zachęcić Was do zgłębiania wiedzy dotyczącej nie tylko pakietu dplyr ale całego języka R – tak więc zaczynajmy!

Krokiem od którego zaczniemy jest oczywiście instalacja pakietu dplyr. Dodatkowo zainstalujemy pakiet hflights zawierający próbkę danych na której będziemy operować we wszystkich artykułach związanych z pakietem dplyr. Do instalacji pakietów służy ogólna komenda install.packages – tak więc zainstalujmy te dwa pakiety:

install.packages("dplyr")
install.packages("hflights")

Po krótkiej instalacji musimy zainstalowane pakiety załadować – zrobimy to przy użyciu komendy library:

library(dplyr)
library(hflights)

Pierwszą funkcjonalnością jakiej się przyjrzymy jest podglądanie danych w zestawie będącym data.frame. Z pudełka R oczywiście daję nam taką możliwość, przypiszmy do zmiennej df dataframe hflights, a następnie ją wyświetlmy:

 ##przypisanie do zmiennej
 df<-data.frame(hflights)
 
 ##wyświetlenie zmiennej
 df

W rezultacie otrzymamy zestaw danych jak poniżej:

R-result

Oczywiście wyświetlany przez nas data frame jest długi i szeroki dlatego konsola przeniosła część kolumn do nowej linii dlatego dane nie są nam serwowane w przejrzysty i wygodny sposób. Oczywiście możemy wyświetlić tylko część danych używając takich komend jak head i tail lub podsumowanie używając  summary – lecz oczywiście możemy również użyć pakietu dplyr i obiektu tbl_df. Jest to typ pochodny data.frame umożliwiający dużo sprawniejsze wyświetlanie danych – przetestujmy ten fakt konwertując naszą zmienną df na tbl_df i przypisując rezultat do zmiennej tdf:

##przypisanie do zmiennej tdf obiektu tbl_df
 tdf<-tbl_df(df)
 
##wyświetlenie rezultatu
 tdf

R-result

Jak można zauważyć rezultat jest dużo bardziej przejrzysty i kompaktowy. Oprócz wyświetlenie 10 pierwszych wartości  – rezultat został dopasowany do rozmiaru naszego okna – pozostałe kolumny zostały jedynie wyświetlone w dolnej części. Dodatkowo w górnej części możemy zauważyć rozmiary naszego obiektu czyli z jaką ilością kolumn i wierszy mamy do czynienia. Najciekawszym jest fakt, iż jeśli zwiększymy rozmiar naszej konsoli to zostanie w niej wyświetlona większa ilość kolumn wraz z wartościami:

R-result

Możemy również wyświetlać losowe elementy zestawu przy użyciu funkcji sample_n oraz losowy procent wierszy z wykorzystaniem funkcji sample_frac:

##pobranie ośmiu losowych wierszy z zestawu
 sample_n(tdf,8)

R-result

 ##pobranie ośmiu losowych 5 tysięcznych procenta wierszy
 
sample_frac(tdf,0.00005)

Results

Można odnotować, iż funkcja sample_frac traktuje liczbę 1 jako 100% wierszy – dlatego też użyliśmy tak niskiego wskaźnika aby uzyskać dostatecznie małą liczbę wierszy.

Powyższe funkcje pozwalają na szybkie, poglądowe wyświetlenie określonych danych. Oczywiście pakiet dplyr pozwala na wiele więcej – w kolejnym artykule zajmiemy się metodami filtracji oraz wyświetlania określonych danych z naszego zestawu.

Leave a Reply