Dziś będzie wpis jednocześnie o trzech bardzo ciekawych rzeczach.
Po pierwsze przedstawię prototyp aplikacji, pozwalającej na interaktywne przeglądanie i porównywanie wyników z sondaży poparcia dla partii politycznych.
Po drugie, opowiem jak budować interaktywne serwisy internetowe z logiką opisaną w R, z użyciem Shiny – rewolucyjnej [to nie jest nadużycie, to naprawdę jest rewolucja] implementacji paradygmatu ,,reactive programming” [tutaj opis].
Po trzecie, zobaczymy co ciekawego można znaleźć porównując wyniki różnych partii i różnych ośrodków badania opinii. Wyniki których ośrodków są ,,obciążone” i jak bardzo mylące jest sugerowanie się zmianami poparcia przedstawianymi w mediach.
Zacznę od opisu wyników a później powiem o tym jak technicznie jest zbudowane narzędzie, które opisuję.
Tutaj znajduje się prototyp aplikacji, pozwalającej na porównanie jak wyglądały wyniki z sondaży poparcia różnych partii politycznych opracowanych przez różne ośrodki badania opinii publicznej.
Porównać można wyniki zebrane przez CBOS/Homo Homini/SMG KRC/TNS Polska [różne ośrodki są oznaczane różnymi kolorami].
Poparcie mierzone przez te ośrodki można porównać dla pięciu różnych partii PO, PIS, PSL, SLD, RP [przedstawione na różnych panelach].
Dodatkowo można zobaczyć jak wygląda wygładzona ocena poparcia dla wskazanej partii uwzględniając wyniki wybranych ośrodków [szara krzywa trendu]. Można kontrolować poziom wygładzenia i horyzont czasowy.
A największym hitem, jest możliwość porównania, jak sondaże poszczególnych ośrodków mają się do wygładzonej średniej sondaży różnych ośrodków z danego okresu.
Zobaczmy np. jak wygląda poparcie dla Ruchu Palikota przez ostatnie 18 miesięcy. Różne kształty i kolory punktów odpowiadają różnym ośrodkom badania opinii. Szara krzywa to poparcie liczone jako średnia z sondaży wygładzona w czasie [stopien wygładzenia można zmienić]
Widzimy, że pomimo czasem dużych różnic pomiędzy wynikami sondaży, średnie poparcie jest stabilne i nie zmienia się, oscylując blisko 6%.

Zobaczmy teraz przykład dla poparcia dla PIS. Wybrałem tą partię, ponieważ dla niej najwidoczniejsze są różnice pomiędzy ośrodkami opinii publicznej. Dla PO te różnice są praktycznie niewidoczne, a dla innych partii poparcie jest mniejsze.
Aby przykład był czytelniejszy zamiast punktów przedstawiamy wygładzone trendy wewnątrz ośrodka badania opinii. Po takim wygładzeniu widać ,,systematyczne” i powtarzalne różnice w wielkości 5 punktów procentowych w wynikach dla CBOS a wynikach dla Homo Homini / SMG KRC.

Zachęcam do samodzielnego eksperymentowania z tą aplikacją.
Powstała ona w całości w pakiecie Shiny, pozwalającym na opisanie wyglądu i logiki w programie R. Pakiet ten jest rozwijany przez firmę Rstudio i więcej o niej można przeczytać tutaj.
Prototyp który przedstawiałem powyżej jest rozwijany. Planowana jest między innymi poprawa wyglądu, projekt nowego wyglądu można zobaczyć tutaj http://www.iwonatrzcinska.pl/wykresy/.
Chętnie usłyszę komentarze, zarówno dotyczące proponowanego nowego wyglądu aplikacji, jak i funkcjonalności obecnego prototypu.
Świetna robota! Shiny ma duży potencjał. 🙂
Sama aplikacja jest rewelacyjna. Dobra robota!
IMHO brakuje porównania wszystkich trendów poparcia na jednym wykresie, czegoś na wzór http://www.dashboardinsight.com/dashboards/live-dashboards/canada-2011-election-dashboard.aspx.
Natomiast projekt interfejsu wydaje mi się dosyć „przestarzały” jak na te czasy. Ja był uderzył w kierunku „tabletowego” interefejsu, jest to trend, który teraz dominuje w projektowaniu aplikacji (np.: http://www.localytics.com/wp-content/uploads/2011/02/app-analytics-header.png czy http://www.mobile-ent.biz/_media/images/news/original/distimo-app-iq-screenshot-1.jpg czy http://images.tweaktown.com/news/2/3/23432_16_flurry_revamps_its_free_mobile_app_analytics_with_custom_tracking_and_alerts_full.png ).
Dzięki za linki.
Co do prezentowania wyników dla wszystkich partii naraz, to wciąż walczę ze sobą.
Ale pewnie w kolejnej edycji będzie taka możliwość.
Bardzo ciekawe zestawienie wyników badań. Gratulacje!
Chciałbym jednak zwrócić uwagę na pewien niuans: na pierwszy rzut oka wyniki poparcia dla poszczególnych partii podawane przez CBOS wydają się systematycznie niższe niż w pozostałych ośrodkach. To tylko pozór wynikający z zestawienia ze sobą danych, które nie powinny być bezpośrednio porównywane. CBOS zazwyczaj podaje wyniki poparcia dla partii politycznych z uwzględnieniem odsetka osbó niezdezydowanych, podczas gdy pozostałe ośrodki zazwyczaj wyłączają niezdecydowanych z podstawy procentowania.
Dziękuję za komentarz,
pracujemy nad kolejną wersją, znacznie rozszerzoną wersją aplikacji,
z pewnością uwzględnimy tę uwagę.