Nauka spod znaku kultu cargo, a liczenie średniej i odchylenia standardowego

Jakiś czas temu współpracujący doktorant przypomniał mi o terminie ,,nauka spod znaku cargo’’ powtarzjąc to wyrażenie w odniesieniu do polskiej nauki kilkanaście razy w ciągu tygodnia. ,,Nauka spod znaku cargo’’ to nazwa rozdziału z biografii Richarda Feymana ,,Pan raczy żartować, panie Feyman’’ (rewelacyjna książka) nawiązującego do kulty cargo, bardzo interesującego zjawiska (zobacz więcej np. tutaj http://en.wikipedia.org/wiki/Cargo_cult). We wspomnianym rozdziale Feyman piętnuje pseudonaukowe zachowania polegające na powtarzaniu pewnych czynności, które wykonują naukowcy, bez zrozumienia po co sie je wykonuje. W przypadku przedstawionym w książce zabrakło krytycznego spojrzenia na wyniki eksperymentu i dryfowanie publikowanych wyników w kierunku błędnej ale ,,powszechnie uznanej za prawdziwą’’ wartości.

Zastanawiałem się czy można na poletku statystyki znaleźć przykład nauki spod znaku cargo. Okazuje się, że przykładów jest co nie miara. Cała statystyka jest traktowana przez pewne środowiska jak zbiór rytuałów w wyniku których bogowie zsyłają odpowiedź: ,,statystycznie istotne (publikować)” lub ,,nie istotne statystycznie (nie publikować)”. W tej religii czci się liczbę 0.05, współczynnik korelacji Pearsona a starsi szamani przekazują sobie wiedzę jak wywołać, przepraszam, wykonać regresję logistyczną. W tych zaklęciach nie ma nic złego o ile stosuje się świadomie. Złe jest jedynie używanie tych zaklęć bezkrytycznie. Łatwo kwestionować sensowność używania korelacji Pearsona lub poziomu istotności 0.05, więcej frajdy będzie jeżeli zmierzymy się z rytuałem tak podstawowym jak opisywanie danych poprzez podanie średniej i ochylenia standardowego, czyli charakterystyk zakorzenionych bardzo bardzo głęboko.

 

Jakiś czas temu na seminarium licencjackim omawialiśmy raport dotyczacy związków pomiędzy paleniem papierosów a alergiami, a dokładniej artykuł ,,Problem inhalacji dymu tytoniowego w badaniach ECAP jako zagadnienie zdrowia publicznego’’ z ktróry można znaleźć pod adresem https://ckp.wum.edu.pl/sites/ckp.wum.edu.pl/files/periodyk_nr_1-2011_0.pdf.

W tym artykule znaleźć można zdanie ,,Palenie tytoniu w Polsce wśród osób, które zadeklarowały palenie przynajmniej przez rok, zwykle rozpoczyna się około 18. roku życia (m = 17,77 +- 3,06).‘’

Odgadnąć można, że w nawiasach podano średnią i odchylenie standardowe. Reszta tego wpisu ma na celu uzasadnienie dlaczego liczenie i prezentowanie średniej i odchylenia standardowego dzisiaj to zły pomysł choć kiedyś było dobrym pomysłem.

Dlaczego liczenie średniej to zły pomysł?

Zacznijmy od tego co czytelnik chciałby zobaczyć w nawiasie. Poszukiwany jest liczbowy opis przeciętnego wieku w którym rozpoczyna się palenie (o ile się pali) wraz z informacją jak bardzo wiek rozpoczęcia palenia różni się od wielu przeciętnego. Liczy się tylko to by ten opis był zrozumiały dla czytelnika i by pozwalał na zrozumienie kiedy ludzie zaczynają palić.

  •  Najczęściej średnią pokazuje się wierząc, że przedstawia ona wartość najbardziej typową. W pewnych sytuacjach to jest prawda, ale nie zawsze. Jeżeli analizowana cecha ma rozkład niesymetryczny, np. można spodziewać się wartości znacznie większych od przeciętnych, to średnia zamiast wskazywać na wartości typowe będzie przesunięta w kierunku wartości nietypowych (bardziej niz np. mediana). W przypadku wieku rozpoczęcia palenia mamy do czynienia z potencjalnie niesymetrycznym, prawostronnie skośnym rozkładem. Przykładowo, mając grupę czterech osób, które zaczeły palić w wieku 12 lat i jednej, która zaczeła palić w wieku 52 lat, średnia wychodzi 20 lat. W żaden sposób nie opisuje ona wartości typowej.
  • Kolejna kwestia dotyczy grupy na której liczy sie średni wiek. W opisywanym przykładzie średnia liczona jest tylko dla osób, które palą. Ale ankietowane są osoby w różnym wieku. W przedstawianym badaniu wywiad przeprowadzany w grupie osób dorosłych, w grupie nastolatków i w grupie dzieci. Zróbmy mały eksperyment myślowy. Zapytajmy tysiąc 6latków w jakim wieku zaczęły palić papierosy. Ponieważ (mam nadzieję) 6latki nie palą zazwyczaj papierosów, np. tylko dwójka z nich odpowiedziała by, że juz pali papierosy. Po uśrednieniu ich odpowiedzi okazałoby się, że średnio dzieci palą przed 6 rokiem życia. Ok, czyli średni wiek rozpoczęcia palenia zależeć będzie od tego jaka jest struktura wiekowa grupy którą pytamy. Liczenie średniej tak po prostu z wszystkich ankietowanych osób nie ma sensu.
  • I jeszcze dochodzi kwestia tego jak zmienia się wiek rozpoczynania palenia z czasem. Może tak być, że osoby urodzone w latach czterdziestych zaczynały palić w innym wieku niż osoby urodzone w latach sześciesiątych czy osiemdziesiątych. Obserwując reakcję osób referujacych ten artykuł łatwo zauważyć, że średnią 18 lat odnoszą do obecnego pokolenia młodych palaczy, odczytują ją błędnie jak stwierdzenie, że teraz młodzi rozpocznie palenie w wieku 18 lat. Tymczasem jeżeli wrzucimy wszystkich ankietowanych do jednego worka to średniej nie można nijak przypisać do aktualnego młodego pokolenia.

Po co więc liczono średnią dla wszystkich badanych? Czyżby z przekonania, że w prawdziwych aktykułach naukowych podawane są średnie więc i w tym tak być powinno?

 

Dlaczego liczenie odchylenia standardowego to zły pomysł?

To zaskakujące jak często w artykułach podawane jest odchylenie standardowe, choć wzór na policzenie odchylenia standardowego jest wyjątkowo trudny w interpretacji (pierwiastek, kwadraty, iloraz itp). Ok, odchylenie to jakaś ocena parametru skali, im większe odchylenie standardowe tym większe różnice pomiędzy średnią a wartościami. Ale poza takimi mglistymi intuicjami mało kto potrafi powiedzieć co to znaczy odchylenie standardowe=3. W artykułach podaje się więc współczynniki, których interpretacja jest niejasna, tylko dlatego, że kiedyś tak robiono. Są oczywiście znacznie lepsze oceny parametru skali, takie jak rozstęp międzykwartylowy i kwartyle, które mają łatwą do wyjaśnienia interpretację (o tym za chwilę). Odchylenie standardowe nie ma jasnej interpretacji więc trudno znaleźć powód by je podawać opisując wiek rozpoczęcia palenia.

 

Dlaczego kiedś to był dobry pomysł?

W kulcie cargo kluczowym problemem jest kopiowanie wzorców, które w pewnym kontekście mają sens. Ale są kopiowane w miejsce / czas gdzie sensu nie mają. Powyżej napisałem dlaczego liczenie średniej i odchylenia standardowego nie mają sensu. W przypadku odchylenia standardowego ta krytyka dotyczy praktycznie wszystkich cech. Pytanie więc zostaje kiedy te parametry miały sens, skoro były używane na tyle często, że stały się utrwalonym rytułałem.

(Dawno dawno temu) Około 80 lat temu, gdy na świecie nie istniały jeszcze komputery, aby porównywać grupy obiektów używało się testu t-studenta i/lub analizy wariancji. Mając kartkę i długopis można nawet dla dużego zbioru danych łatwo policzyć średnią i odchylenie standardowe w grupach. Mając te dwie wartości i tablice statystyczne można użyć testu t-studenta by ocenić czy różnica pomiędzy średnimi jest duża czy nie. Nie było to doskonałe narzędzie, ale nie było innego. Statystycy byli wyedukowani i wiedzieli kiedy jest sens pokazywać odchylenie standardowe a kiedy nie. Ponieważ test t-studenta był w pewnych kręgach bardzo często wykonywany, dlatego rzucając okiem na średnie i odchylenia standardowe można na pierwszy rzut oka ocenić na ile grupy się od siebie różnia i wyrobić sobie orientację jak wygląda rozkład zmiennej w grupach. Ale 80 lat to szmat czasu. Dzisiaj mamy wiele narzędzi do opisu rozkładu interesujących nas zmiennych. Nie ma więc żadnego uzasadnienia by wpisywać do tabelek opisujących rozkład zmiennej odchlenie standardowe.

Wracając do zdania od tórego zaczeliśmy ten wpis, to co jest ciekawe to kiedy zaczyna się palić. Czy to jest tak, że nastolatki sa podatne na wpadnięcie w nałóg i jak już przekroczy barierę, powiedzmy 22 lat to już się nie zaczyna palić, czy też można zacząć palić w każdym wieku. Aby spróbować odpowiedzieć na to pytanie zobaczymy jak rozkład wieku w którym zaczyna się palenie zależy od wieku osoby którą pytamy.

[Rys 1] Na osi OX zaznaczono rok urodzenia ankietowanej osoby, dla każdej grupy rowieśników wyznaczono wartość minimalną i maksymalną (jasne małe kropki), medianę a więc wiek przed którym rozpoczyna palenie 50% osób, które będą palić, kwantyle 10% i 90%, a więc przedział czasu w którym rozpoczyna palenie 80% pytanych. Czarna linia pokazuje maksymalny wiek ankietowanych w chwili badania. Gdy pytamy wśród osób młodych nie dziwi nas (już), że mediana i kwantyle są niżej, ale co ciekawe w grupie osób powyżej 30 roku życia kwantyle się stabilizują. 80% osób zaczyna palić pomiędzy 15 a 22-23 rokiem życia. Zdarzają się też bardzo wczesne albo bardzo późne początki.

 

Na koniec należy uczciwie podważyć sensowność używania danych o wieku rozpoczęcia palenia na podstawie ankiet. Przyjmując, że fakt palenia albo wieku rozpoczęcia palenia może być wstydliwy dla pewnych osób należy spodziewać się pewnej liczby nieprawdziwych odpowiedzi. Aby mieć wartościowe dane tego typu zmienne należy zbierać inaczej niż w postaci ankiety. Ale to temat na inny wpis.

Pointa.

Cytując Franka Harella, można zebrać dane w eksperymencie za 10 milionów dolarów, ale jeżeli na statystykę przeznaczy się 1000 dolarów to otrzyma się wyniki warte 1000 dolarów.

Jeżeli jakieś zależności nie są oczywiste to nalezy przyznaczyć więcej czasu i środków by wyjasnić zleżności które są w danych.

 

R, Kair, Cairo, wiek a liczba lat nauki

Dziś będzie o wielu tematach jednocześnie.
Po pierwsze przeglądając materiały z konferencji useR znalazłem informacje o pakiecie Cairo. Wstyd, że o tym pakiecie dowiedziałem się tak późno. Ale ciesze się że się dowiedziałem wystarczająco by napisać dlaczego.

Cairo to biblioteka do grafiki 2d umożliwiająca zapisywanie grafiki do różnych formatów, między innymi wektorowych formatów PS, PDF, SVG, ale również do rastrowych formatów PNG itp. Biblioteka pozwala na stosowanie takich miłych technik jak anty-aliasing itp. poprawiających wygląd grafiki, szczególnie rastrowej, szczególnie w porównaniu z tym co R produkuje domyślnie. Zobaczmy czy biblioteka ta odmieni rysunki na tym blogu. Zaczniemy od prostego przykładu, w którym porównamy liczbę lat nauki z liczbą przeżytych lat, oczywiście bazując na zbiorze danych o Diagnozie społecznej.

Aby nie zaciemniać tego co najważniejsze, nie będę tutaj wklejał kodu R, który generuje wykres. Osoby zainteresowane znajdą ten kod tutaj. W kodzie tym wykorzystujemy funkcję xyplot() z pakietu lattice do wygenerowania obiektu wyk opisującego wykres.

Porównamy wygląd grafiki zapisanej poleceniami png(grDevices), CairoPNG(Cairo) i CairoSVG(Cairo). W przypadku tej ostatniej funkcji rozmiary podajemy w calach, w poprzednich dwóch w pixelach.

# standardowa funkcja pakietu R
png("wiek_lnauki.png",600,600)
print(wyk)
dev.off()
# ten sam format png, ale z użyciem pakietu Cairo
CairoPNG("wiek_lnauki_cairo.png",600,600)
print(wyk)
dev.off()
# i tym razem grafika wektorowa SVG
CairoSVG("wiek_lnauki.svg",7,7)
print(wyk)
dev.off()

Poniżej wygenerowane pliki. Pierwszy w formacie png wygenerowany przez funkcję png.

Drugi w formacie png ale wygenerowany biblioteka Cairo.

I trzeci w formacie SVG, nie każda przeglądarka potrafi go wyświetlić, jeżeli poniżej nie widać obrazka to znaczy że trzeba zmienić przeglądarkę.

Czy widać różnice? Ogromne, szczególnie na krzywych które w pierwszym przypadku są niesamowicie spixelowane w drugim przypadku już znacznie gładsze. Widać to szczególnie w dużym powiększeniu. W dużym powiększeniu widać też zalety wektorowego formatu SVG, krzywe będą gładkie bez względu jak bardzo je powiększymy. Oczywiście za format wektorowy trzeba zapłacić. W zbiorze danych Diagnoza Społeczna znajdują się dane dla kilku tysięcy osób. Gdyby każdą z nich zaznaczyć punktem to wektorowy format w którym każdy z tych punktów byłby opisany, zajmowałby kilkanaście MB. Nie najlepiej jak na grafikę do umieszczenia w internecie. Dlatego też na trzecim z powyższych obrazków są tylko krzywe bez punktów.

Dyskusje o technikaliach mamy już za sobą, zobaczmy co w ogóle widać na tych wykresach. Porównujemy liczbę lat nauki versus wiek. Dane bierzemy zarówno dla osób ankietowanych w roku 2000 jak i 2011. Znaczna część osób uczestniczy w obu badaniach, dla tej grupy spodziewamy się, że lat przybędzie ale lat nauki niekoniecznie.
Ciągła linią zaznaczyłem wygładzona medianę, kropkowaną linią wygładzony kwantyl rzędu 90%.

Dla osób które obecnie są w wieku 40-60 lat, mediana liczby lat edukacji to 11, dla osób w wieku 25 lat ta mediana jest już o 2 lata wyższa, efekt coraz większej liczby osób studiujących i też zmian w systemie edukacji. Niższą medianę liczby lat edukacji u osób w wieku >70 lat można wytłumaczyć wojną.

Przyjrzyjmy się jeszcze kwantylowi rzędu 90%. Dla 30latków kwantyl ten wynosi 18 lat nauki, czyli ponad 10% dzisiejszych 30latków ma na koncie 18 lub więcej lat nauki. To sporo, ale dla niektórych uczenie się nigdy się nie kończy. W stosunku do stanu sprzed 11 lat coraz więcej lat spędzamy na edukacji. Czy jako społeczeństwo jesteśmy dzięki temu mądrzejsi?

Zmiana dochodów w ostatnich 8 latach w podziale na płeć

Analiza zróżnicowania dochodów bardzo mnie interesuje. To jednak większy temat i poświęcimy mu więcej czasu kiedy indziej. Dziś chciałbym podzielić się jednym wykresem, na którym zobaczymy jak wyglądał rozkład dochodu netto ankietowanego w zależności od wieku i w zależności od płci, tak w roku 2003 jak i w roku 2011. Oczywiście złotówka dzisiaj i wtedy to dwie różne złotówki, nie sposób przeliczyć siły nabywczej teraz i wtedy bo zależy ona od koszyka zakupów. Inaczej wyglądała zmiana cen artykułów luksusowych, inaczej zmiana cen jedzenia a inaczej zmiana cen mieszkań. W każdym razie na potrzeby tego rysunku wykorzystam wskaźnik inflacji dla tych 8% wynoszący 23.7% (na podstawie http://blog.opiekuninwestora.pl/index.php/inflacja/). Więc przedstawiane ceny to albo ceny podane w roku 2011, albo ceny podane w roku 2003 i skorygowane o inflacje.

W poniższych ilustracjach nie analizujemy osobno osób żyjących samotnie (tzw singli), par bez dzieci (DINKs) i par z dziećmi, choć pewnie pomiędzy tymi trzema grupami są znaczne różnice, ale nie wszystko na raz.

Ciągła linia to wygładzona ocena mediany, przerywana to kwantyl rzędu 90%.
Dużych niespodzianek nie ma, ale niektóre wyniki są ciekawe.
Po pierwsze, nawet po uwzględnieniu inflacji zarobki wzrosły (nie tylko ankietowanych, bo to jest oczekiwane, ale tez rozkład zarobków w grupie wiekowej np 30 latków). I to wzrosły znacznie. Oby związane to było z większa produktywnością a nie spadkiem wartości złotówki.
Po drugie kobiety zarabiają mniej. Dotyczy to i medianowych zarobków i kwantyla 90%.
Po trzecie, i chyba najciekawsze, w roku 2011 wyraźnie widać, że najwyższe dochody uzyskują osoby w wieku 30-40 lat.
Biorąc pod uwagę, że oś oY jest logarytmiczna, zarówno osoby młodsze jak i starsze zarabiają znacznie mniej. U kobiet ten okres wyższych dochodów kończy się wcześniej niż u mężczyzn, ale u obu płci kończy się czy to patrząc na medianę czy na kwantyl 90%.
Inaczej było w roku 2003. Nie było wtedy tak dużych dysproporcji związanych z wiekiem, szczególnie jeżeli porównywać mediany dochodów. Ciekawe czy to zróżnicowanie będzie się jeszcze pogłębiało.

To pierwsza ilustracja. Czas na dokładniejsze drążenie tematu. Kierunków badania czynników różnicujących wysokość dochodów jest dużo. Może macie propozycje od czego zacząć?

Ceny metra kwadratowego we Wrocławiu

Kilka dni temu dodałem do repozytorium zbiór danych dotyczących cen ofertowych mieszkań z serwisu oferty.net (patrz: http://smarterpoland.pl/?p=60). Teraz przyszedł czas na przyjrzenie się bliżej tym danym.

Ponieważ większość z przeprowadzonych analiz uwzględniała zrożnicowanie pomiędzy dzielnicami to, aby nie zamazywać wyników efektami 40 różnych dzielnic, pokażę kilka analiz wykonanych wyłącznie dla Wrocławia. Administracyjnie Wrocław ma 5 dzielnic, w danych jest jeszcze szósty poziom ‘inne’ oznaczający brak lub niejednoznaczne przypisanie dzielnicy do oferty sprzedaży mieszkania. Oczywiście wszystkie analizy są generyczne i można je powtórzyć dla innych miast.

Przyjrzę się bliżej efektom wpływającym na cenę metra kwadratowego we Wrocławiu. Mieszkania podzilimy na cztery grupy, tzw. kawalerki (jeden pokój powierzchnia 20-35 m2), dla młodego małżeństwa (dwa pokoje 40-55 m2) i dla rodziny z dziećmi (3-4 pokoje 60-80 m2), inne, wybór całkowicie arbitralny. Zobaczmy jak rozkładają się ceny metra kwadratowego dla różnej wielkości mieszkań w różnych dzielnicach. Aby pracować z bardziej jednorodną grupą bierzemy na razie pod uwagę tylko rok 2011. Szerokość pudełka odpowiada liczbie ofert z danej dzielnicy. Interpretacja tak jak wykresu pudełkowego (boxplot). Zaskoczenia nie ma, im wieksze mieszkanie tym m2 tańszy, ceny w centrum sa wyższe niż poza, Śródmieście i Krzyki jako popularniejsze dzielnice sa tez droższe niż Psie Pole czy Fabryczna (każda z tych dzielnic jest bardzo duża, więc uśrednianie cen po całej dzielnicy to bardzo duże uproszczenie). Kod programu R użyty do wygenerowania tego rysunku znajduje się tutaj [http://tofesi.mimuw.edu.pl/~cogito/smarterpoland/mieszkaniaKWW2011/Wroclaw/rysunki.r]

 

 

Prosty model regresji liniowej pokazuje że na cene m2 wpływa istotnie kilka zmiennych, w tym: dzielnica, powierzchnia, data złożenia oferty. Przyjrzymy się każdej z tych zmiennych, zaczniemy od powierzchni. Najprostszą charakterystyką do przedstawienia będzie średnia cena m2, później przyjrzymy się innym charakterystykom. Zobaczmy jak średnia cena m2 rozkłada się dla mieszkań o różnej powierzchni w rozbiciu na dzielnice. Kod programu R użyty do wygenerowania tego rysunku znajduje się tutaj [http://tofesi.mimuw.edu.pl/~cogito/smarterpoland/mieszkaniaKWW2011/Wroclaw/rysunki.r]


Ograniczyliśmy się do przedziały powierzchni 20-100 m2, mieszkań spoza tego przedziału jest dosyć mało, więc wyniki byłyby mało wiarygodne. Obrazki mówią same za siebie, zatem darujemy sobie interpretacje powyższego wykresu. Kolejnym efektem, który będzie nas interesował, to zmiana ceny mieszkania w czasie. Skoro cena metra kwadratowego zależy od powierzchni to do kolejnej analizy zostały one skorygowane, tzn. zastąpione ceną metra kwadratowego odpowiadającą powierzchni 50m2.


Gorąca dyskusja na różnych forach nt. czy mieszkania drożeją czy tanieją wydaje się być łatwa do rozstrzygnięcia na podstawie powyższego wykresu. Ceny spokojnie i powoli sobie spadały w większości dzielnic do marca tego roku, gdy zaczeły spadać szybciej. Troche to zaskakujące, można jednak sprawdzić że podobny efekt utrzymuje się też w innych miastach. Optymiści (niepoprawni) mogą stwierdzić, że w Śródmieściu ceny rosły. Powyższy wykres dla Warszawy byłby ciekawszy, ponieważ mamy ceny z ostatnich pięciu lat, więc ciekawszy horyzont czasowy. Oczywiście powyższy trend dotyczy mieszkań z naszego zbioru danych, niekoniecznie jest on reprezentatywny, zatem i powyższe wyniki należy czytac krytycznie (jak wszystko). Zobaczmy jeszcze, ile ogłoszeń mamy z różnych okresów czasu.


Czy to nasze źródło danych jest coraz popularniejsze, czy też coraz więcej mieszkań się sprzedaje, trudno te dwa efekty rozwikłać.

Powyżej oglądaliśmy średnią cenę metra kwadratowego. Jasne jest, że rozkład cen jest silnie skośny, zdarzają się pojedyńcze bardzo drogie mieszkania i te pojedyncze obserwacje odstające wpływają silnie na średnią, więc wypadałoby porównać średnią z medianą albo inną bardzej odporną charakterystyką. Wykorzystamy regresję kwantylową i krzywe sklejane kubiczne, aby zamodelować zmienę mediany ceny metra kwadratowego w czasie. Wyniki poniżej, linia ciągła to wspomniana mediana, linia kropkowana odpowiada średniej.


Zgodnie z oczekiwaniami mediany sa poniżej średnich, trendy dla obu charakterystyk sa podobne. Kod programu R użyty do wygenerowania tego rysunku znajduje się tutaj [http://tofesi.mimuw.edu.pl/~cogito/smarterpoland/mieszkaniaKWW2011/Wroclaw/rysunki.r]

Podsumowując, modelowanie cen mieszkań to ciekawy temat, za jakiś czas zajmiemy się cenami w Warszawie i Krakowie.

Wykresy i kody programu R wykorzystane w tym wpisue znajdują się w katalogu http://tofesi.mimuw.edu.pl/~cogito/smarterpoland/mieszkaniaKWW2011/Wroclaw/.