Co nowego w ,,Przewodnik po pakiecie R – wydanie 4.0”?

Przewodnik1234okladka
Czwarte wydanie ,,Przewodnika po pakiecie R” trafiło do księgarń w połowie grudnia. Pierwszy nakład był mały i szybko się skończył, ale od połowy stycznia Przewodnik jest ponownie dostępny.
A ja mam trochę czasu by napisać co nowego można znaleźć w czwartym wydaniu.

Zmian jest wiele. Kierunki zmian są dwa. Po pierwsze, obniżyć próg wejścia dla osób, które dopiero zaczynają przygodę z analizą danych. Łagodnym wprowadzeniem w temat są pierwsze dwa rozdziały. W upraszczaniu tej części przydały się doświadczenia z Pogromców Danych (2000+ osób) i z różnych szkoleń dla nie-programistów.
Drugi kierunek zmian to szersze wprowadzenie do pakietów z grupy tidyverse oraz ułatwień, które oferuje RStudio. Weterani R mają różne ulubione edytory i rozwiązania codziennych problemów, ale dla osób rozpoczynających przygodę z pewnością najefektywniejszą drogą wejścia jest połączenie RStudio i pakietów z tidyverse. Również osoby pracujące z R od lat mogą z zaskoczeniem odkryć, że praca z datami jest bardzo prosta dzięki pakietowi lubridate (ok, lubridate ma już kilka lat na karku) lub że praca z czynnikami jest prosta dzięki pakietowi forcats.

Wzorem poprzednich wydań, pierwsze 3 rozdziały (150 stron) są dostępne bezpłatnie jako pdf online tutaj.

Rozdział 1 – Wprowadzenie
W pierwszym rozdziale znajduje się krótki opis narzędzia jakim jest język R i edytor RStudio.
Zaczynam od pytania ,,Dlaczego warto poznać R?”,
Czytelnik może zapoznać się z przykładowymi fragmentami kodu R do pobierania danych z internetu (z nadzieją na reakcję czytelnika ,,WoW, to się da zrobić w 5 linijkach! Ja też tak chcę!!!”), wizualizacji pobranych danych oraz prostego modelowania statystycznego. Wszystko w zaledwie kilku linijkach kodu, możliwe dzięki dużej ekspresji języka.
Jeżeli ktoś jeszcze nie wie, czy praca z R jest dla niego, ten rozdział pomoże podjąć decyzję.
Jest tutaj też krótka historia rozwoju R, od początków S po lawinowy rozwój R w ostatnich latach/miesiącach.

Czytaj dalej Co nowego w ,,Przewodnik po pakiecie R – wydanie 4.0”?

MIMUW vs SuperFarmer

screen-shot-2017-01-04-at-23-02-08
W 1997 roku DeepBlue (IBM) wygrał z mistrzem szachowym Garri Kasparowem.
W 2011 roku Watson (IBM) wygrał w Jeopardy! z dwoma mistrzami Bradem Rutterem i Kenem Jenningsem.
W 2016 roku AlphaGo (Google) wygrał w go z jednym z najlepszych graczy Lee Sedolem.
A w tym semestrze, pod przykrywką zajęć z programowania w R i wizualizacji danych, studenci z MIM UW walczą z grą SuperFarmer. Szukamy strategii wygrywającej (w jakimś sensie).

SuperFarmer to gra wydana przez Granna na bazie gry Hodowla Zwierzątek, którą opracował matematyk, Karol Borsuk, profesor Uniwersytetu Warszawskiego. Zasady są dosyć proste, przez co można grać nawet z małymi dziećmi. Gra jest bardzo dynamiczna i przyjemna nawet dla wytrawnych / starszych graczy.

Póki co, najlepsza znaleziona przez studentów strategia ma medianowy czas gry 34 kroki (tj. w grze jednoosobowej dla najlepszej strategii, połowa gier kończy się zwycięstwem przed 34 krokiem).

rozkladliczbyruchow

Czytaj dalej MIMUW vs SuperFarmer

Konkurs na najgorszy wykres 2016 roku

Zbliża się nasz konkurs na najgorszy wykres tego roku. Kandydaci z poprzednich lat dowodzą, że nie jest prosto zdobyć ten tytuł (edycja 2015, edycja 2014, edycja 2013, edycja 2012).

Zasada konkursu jest prosta. Raz dziennie, do końca roku, można wskazać swoje typy za pomocą ankiety umieszczonej na końcu tego wpisu. Po nowym roku zobaczymy, który wykres otrzymał najwięcej głosów. To on otrzyma tytuł ,,Zniekształcenie roku 2016”, a więc grafikę najbardziej zniekształcającą prezentowane dane. Aby ułatwić głosowanie, każdy kandydat ma skrótową nazwę ,,wpadającą w ucho” nazwę.

Tym razem nominowanych grafik było kilkadziesiąt. Część otrzymałem na maila, część trafiła do mnie przez tag @smarterpoland na Facebooku lub Twitterze. Aby uprościć głosowanie, wybrałem 13 grafik w czterech grupach: ,,Ach te słupki”, ,,Co tam panie w polityce”, ,,Pole minowe” i ,,Niefortunne koło”.

Niech zwycięży najlepszy!

Czytaj dalej Konkurs na najgorszy wykres 2016 roku

Równanie Choinki

bokeh_plot-1

Bibliotek i narzędzi do tworzenia interaktywnych wykresów jest cała masa. Poczynając od tych pozwalających przy odrobienie wysiłku na wyrenderowanie praktycznie każdego możliwego wykresu (D3.js), po te generujące wykresy błyskawicznie, ale ograniczone do kilku szablonów (np. NVD3). Aby przetestować elastyczność różnych narzędzi, na ostatnich zajęciach z Technik Wizualizacji Danych wykonaliśmy test choinki – w bibliotece XYZ przygotuj interaktywną choinkę.

Poniższą przygotowali Jan Dyszyński i Maksymilian Mazur z użyciem biblioteki RBokeh (a dokładniej R-owego portu do Bokeh). Kod jest tutaj, przykład poniżej, przy odrobienie zoomu można odczytać równanie tej choinki.



screen-shot-2016-12-24-at-17-30-44

Po lewej i pod tym linkiem jest choinka, której autorem jest Piotr Smuda (najedźcie myszką aby sprawdzić jakie prezenty są pod choinką).

screen-shot-2016-12-23-at-15-03-41

Tutaj jest choinka w googleVis wykonana przez panią Małgorzatę Sobczak.

Kolejna choinka jest w ggiraph. Autorką jest Dorota Łępicka a kod jest tutaj.

screen-shot-2016-12-29-at-20-16-18

PISA 2015 – how to read/process/plot the data with R

Yesterday OECD has published results and data from PISA 2015 study (Programme for International Student Assessment). It’s a very cool study – over 500 000 pupils (15-years old) are examined every 3 years. Raw data is publicly available and one can easily access detailed information about pupil’s academic performance and detailed data from surveys for studetns, parents and school officials (~2 000 variables). Lots of stories to be found.

You can download the dataset in the SPSS format from this webpage. Then use the foreign package to read sav files and intsvy package to calculate aggregates/averages/tables/regression models (for 2015 data you shall use the GitHub version of the package).

Below you will find a short example, how to read the data, calculate weighted averages for genders/countries and plot these results with ggplot2. Here you will find other use cases for the intsvy package.

pisa2015

Zgłoszenia na ,,Konkurs na najgorszy wykres roku 2016”

Kontynuując tradycję konkursów na najgorszy wykres roku (tutaj edycja 2015, tutaj 2014, tutaj 2013 czy a tutaj 2012) ogłaszam nabór zgłoszeń na Konkurs na najgorszy wykres roku 2016.

Zgłaszać można dowolny wykres, który był prezentowany w 2016 roku, czy to na portalach internetowych, czy mediach społecznościowych czy konferencjach branżowych.

W tym konkursie, ,,najgorszy” oznacza najbardziej nieczytelny, zniekształcający dane lub wypaczający prezentowaną historię.

Już kilka grafik mam, są naprawdę niezłe, ale im więcej kandydatów tym ciekawsi zwycięzcy. Propozycje wykresów czy infografik proszę przesyłać mailowo lub dodawać w komentarzach poniżej.

Czas na przesyłanie zgłoszeń: do 20 grudnia. Konkurs na najgorszą grafikę jest zaplanowany na ostatni tydzień roku.

Prace domowe

Dawno już nie prowadziłem przedmiotu, przy którym tyle przyjemności sprawiało mi sprawdzanie prac domowych!

Na przedmiocie ,,Techniki prezentacji danych”, studenci jako prace domowe przygotowują grafiki związane z danymi, które znaleźli w gazetach z ostatniego tygodnia. Niektóre z tych prac są świetne. Poniżej dwie wykonane ostatnio przez Ewę Baranowską i Martę Jóźwik.

Tabela z Bloombergnews Polska

twd2

zamienia się w wykres przedstawiający rekordowe hiperinflacje (dwie z nich dotyczą Polski). Wykres trzeba oglądać w pełnej rozdzielczości (kliknij by otworzyć w pełnej rozdzielczości).

twd

Drugi wykres wyrósł z Pulsu Biznesu.

img_20161118_244049659

Trochę gg-magii i

twd3

Odkrywać! Ujawniać! Objaśniać!

eseje
W listopadzie mamy wiele akcji wydawniczych. Kilka dni temu pisałem o tym, że do księgarni trafiają Muffinki – bogato ilustrowane opowiadania statystyczne dla dzieci.
A w tę sobotę do księgarni wrócił ,,Zbiór esejów o sztuce prezentowania danych Odkrywać! Ujawniać! Objaśniać!” Akurat dostaliśmy z drukarni kolejny metr sześcienny książek. W sam raz na święta.

Cała książka jest dostępna w formacie html tutaj. Wersję papierową można kupić w tych księgarniach.

A co znajduje się w kolejnych rozdziałach?

Perełki z historii – Zobaczcie jak wyglądała słynna Róża Nightingale, wykres który uratował tysiące ludzkich istnień. Co tak naprawdę w Człowieku witruwiańskim zakodował Da Vinci? Jakimi wykresami Otton Neurath chciał edukować społeczeństwo.

Percepcja obrazu – Czym różni się plamka ślepa od żółtej oraz dlaczego przy słabym świetle trudno trafić w dziurkę od klucza. Dlaczego na łodziach podwodnych jest czerwone oświetlenie. Co łączy dentystę i dietetyka?

Percepcja kolorów – Dlaczego nie widzimy w podczerwieni ani ultrafiolecie, choć niektóre owady i węże potrafią. Co można odczytać z wykresu chromatyczności i jak pomóc kolegom z deuteranomalią.

Percepcja danych – Jak wygląda Rachunek od państwa 2012? Dlaczego tak trudno czytać wyniki sondaży? Dlaczego tak trudno radzić sobie z niepewnością?

okladka-724x1024

Od kuchni – Dlaczego wykres mozaikowy jest świetny choć rzadko stosowany? Co widać w twarzach Chernoffa? Dlaczego dobre garnki to nie wszystko?

Info-pomyłka – Jaki nie dać się zwieść słupkom, kątom, i dziwnym osiom.

Droga – Jak bawić się prezentacją danych. I to nie tylko na komputerze.

Gramatyka – Do ilu można liczyć w języku plemienia Pirahã? Jak składać wykresy w pakiecie ggplot2? Czym charakteryzuje się polski rozkład normalny?

Miłej lektury!

Techniki wizualizacji danych a rok pracy Sejmu


Jakiś czas temu pisałem o zależności pomiędzy wartością wizualizacji danych a zawartej w nich historii. No dobrze, więc skąd brać ciekawe historie do wizualizacji?

Tych jest pełno dookoła. Przykładowo pomysł na pierwszy projekt z przedmiotu Techniki Wizualizacji Danych podrzucił nam zespół analityków z MamPrawoWiedziec.pl. Mija właśnie pierwszy rok pracy Sejmu. Zobaczmy o czym i jak mówiono, jak głosowano itp.

Pierwszy wykres pokazuje jak często posłowie klubu A wtrącają się w wypowiedzi posłów klubu B. Czasem by krytykować, czasem by wyrazić poparcie.

Poniższy wykres jest interaktywny. Aby uruchomić jego interaktywną wersję trzeba otworzyć tę stronę. Ale ostrzegam, ta interaktywność wciąga.

screen-shot-2016-11-16-at-10-29-20

Drugi wykres jest mniej interaktywny, ale wyładowany treścią po brzegi. Dla pięciu największych klubów pokazuje jak często posłowie wypowiadają się oraz jak często głosują niezgodnie z linią klubu. Skrajne wartości dodatkowo mają zaznaczone nazwisko posła. Poziome linie pokazują jaka jest średnia dyscyplina w klubie. Linia partii w tym przypadku oznacza głos oddany przez większość partii.

Oba powyższe wykresy wykonał zespół Ewa Baranowska, Marta Jóźwik, Magdalena Mazurek. Te akurat najbardziej przypadły mi do gustu z uwagi na estetykę i ilość przedstawionej treści. Pomimo, że póki co głównie omawiamy ggplot2, projekty różnych zespołów eksplorują różne pomysły i techniki. I jak widać efekty są świetne.

Dostęp do danych sejmowych jest prosty dzięki pakietowi sejmRP, który rok temu opracował Piotr Smuda. Jest to API do treści publikowanych na stronach Sejmu (pełne dane dla 7 i 8 kadencji). Pakiet ma kompletną dokumentację i przykłady.

Nic tylko wczytywać i wizualizować.

ps: Dziękuję Annie Ścisłowskiej i Annie Konczewskiej z MamPrawoWiedziec.pl za pomoc merytoryczną.

Wybory w USA

Wyniki wyborów w USA są dalekie od sondaży poprzedzających wybory. Dalekie nawet od exit-polls. Z pewnością analiza przyczyn tych różnic będzie ciekawa (choć analizy po fakcie trudno weryfikować).

Ale poniżej nie będę odnosił się do wyników, ale do sposobu w jaki są prezentowane w serwisach informacyjnych za oceanem.
Trzeba bowiem przyznać, że znaleźć można wiele swietnie przygotowanych wizualizacji ujmujących różne aspekty wyników głosowania. Poniżej kilka przykładów.

New York Times przygotował świetną mapę pokazującą jak zmieniły się wyniki poszczególnych hrabstw pomiędzy tymi a poprzednimi wyborami. Widać przesunięcie sympatii na wybrzeżach w stronę demokratów i olbrzymie przesunięcie sympatii w centralnych stanach.

screen-shot-2016-11-09-at-21-10-18

Wiele świetnych podejść do wizualizacji wyników wyborów i sondaży jest przedstawionych na tej stronie New York Timesa (niektóre podejścia są bardzo pomysłowe).

screen-shot-2016-11-09-at-21-14-45

Poniższa mapa była używana na serwisie fivethirtyeight do zaprezentowania wyników wyborów. Każdy sześciokąt to jeden głos elektorów, jest nawiązanie do geograficznego położenia każdego stanu a jednocześnie informacja jak głosowano.

screen-shot-2016-11-09-at-21-19-41

Google przygotowało interaktywną mapę prezentującą różne problemy związane z głosowaniem.

screen-shot-2016-11-09-at-21-17-14

Ciekawe przykłady wizualizacji wyników sondaży są na stronie The Huffington Post. (a tutaj wyniki wyborów prezydenckich).

screen-shot-2016-11-09-at-21-11-47