EksploRacja danych z krokomierza


Dobrze mieć szwagra. Ostatnio dowiedziałem się od niego, że telefony appla wersji 5s i wyżej, mają koprocesor ruchu. Nic nie trzeba włączać, a on (telefon, nie szwagier) non stop liczy kroki, dystans itp. (o ile oczywiście ma się telefon przy sobie).

To czy i od kiedy liczy, można sprawdzić w aplikacji Health. Poniżej zobaczymy jak te dane wczytać do R i zrobić prostą eksplorację. Poniższy kod jest przetestowany dla iphona, ale pewnie z niewielkimi zmianami będzie działał dla danych z telefonów od innych producentów.

Tutaj są instrukcje jak wysłać sobie dane mailem. Otrzymamy je jako plik xml, zacznijmy od ich wczytania.

Czytaj dalej EksploRacja danych z krokomierza

Shiny, sondaże przedwyborcze i interaktywny ggplot2


Tydzień temu przedstawialiśmy wyniki sondaży przedwyborczych. Tak się, złożyło, że wczoraj pojawiła się nowa wersja shiny, umożliwiająca tworzenie interaktywnych wykresów ggplot2. Wypróbujemy tą możliwość, pokazując na wykresie oszacowanie dla określonego dnia poparcia dla każdego z kandydatów.

Poniższa aplikacja reaguje na ruchy kursorem myszy. Jeżeli nie otwiera się poniżej (może to trwać kilka sekund), to warto sprawdzić wersję pod tym linkiem. Możemy teraz dokładnie odczytać ile (zgodnie z sondażami) wynosiła różnica poparcia na 6 miesięcy przed pierwszą turą wyborów (różnica 50%) a ile zgodnie z sondażami na dzień przed wyborami (10%). To ciekawa historia, po pierwsze zmiana poparcia o 40% w ciągu 6 miesięcy a po drugie błąd rzędu 10 punktów procentowych w ocenie różnicy poparcia w sondażach na dzień przed wyborami.

Czytaj dalej Shiny, sondaże przedwyborcze i interaktywny ggplot2

Wizualizacja danych a kultura zarządzania informacją w firmie

Wczoraj prowadziłem referat ,,Wizualizacja danych a kultura zarządzania informacją w firmie’’, którego rdzeniem były dwa przykłady opisane poniżej. W skrócie pointa sprowadza się do stwierdzenia: Nie wystarczy dane pokazywać graficznie, trzeba je pokazać tak, by pokreślić to co w nich istotne. Ale aby określić co w danych jest istotne trzeba znać kontekst. Gdy jest się analitykiem ,,z zewnątrz”, to potrzebna jest dobra komunikacja pomiędzy analitykiem a osobą która zna problem (czy biznesowy czy naukowy czy inny).

Za pierwszy przykład posłużymy się katastrofą promu Challenger, która miała miejsce w 1986 roku. Bezpośrednią przyczyną katastrofy była niska sprężystość pierścieni uszczelniających spowodowana niską temperaturą. W skrócie w dniu startu było zbyt zimno by uszczelki poprawnie funkcjonowały.

Przed katastrofą wykonywano testy badające uszkodzenia uszczelek. Dane przedstawiono w sposób graficzny za pomocą poniższego diagramu. Na obrysach rakiet są widoczne temperatury w których przeprowadzano testy oraz informacje czy i jakie były uszkodzenia pierścienie uszczelniających.

image1

Czytaj dalej Wizualizacja danych a kultura zarządzania informacją w firmie

Myszy, testy post hoc i diffogramy


Pracowałem ostatnio z ciekawym problemem.

Mamy dwa rodzaje myszy. Z każdego rodzaju wybieramy trzy osobniki. Jesteśmy ciekawi jak pewien sposób traktowania komórek nerwowych wpływa na kolce dendrytyczne, czyli małe wypustki na neuronach. Z każdej myszy pobieramy ileś skrawków mózgu, każdy skrawek traktujemy na dwa badane sposoby. Każdemu skrawkowi robimy kilkadziesiąt zdjęć. Na każdym zdjęciu oznaczamy setki kolców dendrytycznych.

Mierzymy parametry kolców (np. długość), ale ich pomiary nie są niezależne. Musimy uwzględnić efekt zdjęcia, zagnieżdżony w efekcie skrawka, zagnieżdżony w efekcie myszy, zagnieżdżony w efekcie typu myszy. A interesuje nas porównanie pomiędzy sobą czterech warunków eksperymentalnych (skrzyżowane efekty typu myszy i sposobu traktowania).

Czym to modelować?

Czytaj dalej Myszy, testy post hoc i diffogramy

Jakie kolory są częstsze w różnych markach

Tydzień temu szukaliśmy koloru, który cechuje samochody o najmocniejszych silnikach. Okazało się, że czarny i czarny metallic to kolory spotykane w silnych autach.

Ale moc silnika to nie wszystko.
Zobaczmy jaka jest relacja pomiędzy kolorem a marką.
W zbiorze danych auta2012 (pakiet PogromcyDanych) mamy jednak 37 kolorów i 106 marek, jak tu czytelnie pokazać zależność pomiędzy jednym a drugim?

Czytaj dalej Jakie kolory są częstsze w różnych markach

Jakiego koloru auta są najszybsze?

800px-2012_NAIAS_Red_Porsche_991_convertible_(world_premiere)
       Źródło: wikipedia

Wczoraj zakończył się RECOMB 2015, konferencja poświęcona obliczeniowej biologii molekularnej (z naciskiem na obliczeniowa). Było wiele ciekawych referatów, ale dzisiejszy wpis zainspirowała rozmowa, która przytrafiła mi się przy obiedzie.

Rozmawiając o zależnościach statystycznych, od słowa do słowa pojawiła się hipoteza, że najszybsze samochody to samochody czerwone (oczywiście nie chodzi o wpływ koloru na prędkość ale o połączone preferencje właścicieli dotyczące mocy i koloru). Wyraziłem swoją wątpliwość, której mój rozmówca nie przyjął. A jako ludzie wierzący w dane postanowiliśmy sprawę zbadać głębiej.

W pakiecie PogromcyDanych w zbiorze danych auta2012 dostępne są dane o 200 tys. ofertach sprzedaży aut z roku 2012. Dla większości ofert dostępne są informacje i o kolorze auta i o mocy silnika.

Hmmm, sprawdźmy więc jakiego koloru auta mają najsilniejsze silniki.

Czytaj dalej Jakiego koloru auta są najszybsze?

IMDB + ggvis, jak to zrobić?

Screen Shot 2015-03-26 at 09.19.24

Dwa tygodnie temu pisaliśmy o tym jak z bazy danych o filmach IMDB pobierać dane pakietem rvest. Tydzień temu pokazaliśmy aplikację wytworzoną z pakietem shiny, pozwalającą na porównanie ocen dwóch różnych grup użytkowników. Dzisiaj ostatni odcinek z cyklu IMDB, pokażemy jak używając pakietu ggvis przygotować grafikę, która pojawia się w aplikacji shiny.

Pakiet ggvis wciąż ma mniejszą siłę ekspresji niż jego starszy brat ggplot2. Ale gdy przychodzi do prezentacji danych na stronie internetowej ggvis wygląda po prostu świetnie.

Czytaj dalej IMDB + ggvis, jak to zrobić?

R, rvest i web-harvesting


Źródło flickr

Wyciąganie danych z treści stron internetowych to źródło interesujących informacji. Kiedyś wymagało to sporo samozaparcia i pokracznych skryptów w Perlu walczących z bałaganiarskimi źródłami stron internetowych. Dzisiejsze strony internetowe coraz częściej są zgodne ze standardami, jest też coraz więcej cywilizowanych narzędzi do ich parsowania.

Ostatnio moją olbrzymią sympatię zyskał pakiet rvest pozwalający na bardzo proste wyłuskiwanie danych ze stron. Przedstawię go na przykładzie pobierania ocen odcinków seriali telewizyjnych w zależności od wieku i płci oceniającego. Za tydzień zrobimy użytek z tych danych, ale dzisiaj skupimy się na tym jak te dane pobrać.

W serwisie Internet Movie DataBase (IMDB) na stronach “user ratings” (np. tutaj) znajdują się oceny filmu w rozbiciu na grupy wiekowe i płeć.

Z użyciem pakietu rvest pobranie danych i parsowanie strony html do drzewa html sprowadza się do dwóch linii.

Czytaj dalej R, rvest i web-harvesting

Canonical Discriminant Analysis a wykresy HE (***)

Tydzień temu pisaliśmy o wielowymiarowych modelach liniowych. Rozważaliśmy zagadnienie w którym k wymiarowy wektor zmiennych objaśnianych jest różnicowany przez zmienną grupującą. Aby ocenić czy istnieje jakaś zależność patrzymy na macierze E i H (patrz poprzedni wpis).

Problem, który nam pozostał to fakt, że zmienna objaśniana ma k wymiarów a więc i macierze efektów E i H są wymiaru kxk. Efektywnie, na wykresie możemy oglądać te macierze wyłącznie po rzucie na jakąś dwuwymiarową przestrzeń.

Ale na jaką dwuwymiarową podprzestrzeń patrzeć? Możemy brać dowolne rzuty macierzy E i H i je oglądać, ale czy któryś rzut jest lepszy do oglądania?

Przypomnijmy, że chodzi nam przede wszystkim o to by zobaczyć czy podgrupy zmiennej objaśniającej istotnie różnicują wielowymiarowe zmienne objaśniane. Dlatego naturalnym pomysłem jest redukcja wymiaru w zmiennych objaśnianych tak by zachować jak najwięcej wariancji pomiędzy grupami wyznaczonymi przez zmienną objaśniającą.

Popularną techniką takiej redukcji wymiaru jest Canonical Discriminant Analysis. W przestrzeni zmiennej objaśnianej szuka ona ortogonalnych wektorów wyjaśniających możliwie dużo międzygrupowej wariancji. Jeżeli z takich wektorów wybierzemy dwa pierwsze, to otrzymamy podprzestrzeń, w której analizowane grupy różnią się najsilniej (w sensie wariancji międzygrupowej).

Czytaj dalej Canonical Discriminant Analysis a wykresy HE (***)