Kto i kiedy się uczy

Dzisiaj pojawiło się interesujące pytanie/komentarz do poprzedniego wpisu, mianowicie czy i ile uczą się Polacy po trzydziestce. Czy jest tak, że uczymy się tylko do pełnoletności a później z rozpędu jeszcze przez studia, czy też nieustannie rozwijamy swoje umiejętności.

Pytanie, na które będę chciał poniżej odpowiedzieć to czy i ile uczymy się. Będziemy porównywać jak wygląda ilość czasu poświęcanego na dodatkową edukację teraz w porównaniu z poprzednią dekadą. Zobaczymy jak kontynuacja edukcji zależy od wieku oraz od juz posiadanego bagażu lat eukacji.
Odpowiedź na powyższe pytania postaram się zmieścić na niewielkiej liczbie ,,upakowanych” wykresów. Może więc trudno będzie je odczytać na pierwszy rzut oka, ale mam nadzieje że jak już się to uda to okażą się one informatywne.

Tak więc poniżej kilka trudniejszych wykresów.

Kod w programie R, użyty do wygenerowania poniższych wykresów znajduje się w katalogu tutaj. W tym katalogu znajdują się rownież poniższe wykresy w formacie SVG. Ponieważ niektóre pliki mają ponad 600kB wolałem do wpisu podlinkowac znacznie lżejsze pliki PNG.

Przejdźmy do analiz. Poniżej przedstawione są dwie serie wykresów. Jedne wykorzystują paletę kolorów – odcieni fioletu, drugie odcieni koloru ceglastego. Oba komplety wykresów przedstawiają te same dane ale w trochę innej formie.

Należy zaznaczyć, że liczba lat edukacji jest deklarowana przez ankietowanego, a ankieter tej liczby nie sprawdza. Ankietowany mógł nie pamiętać co odpowiedział dwa lata wcześniej, nie zawsze też ze zmienioną liczbą lat edukacji idzie prawdziwe szkolenie.

Na poniższym wykresie przedstawiamy liczbę lat edukacji respondentów w latach 2005 i 2003. Wszystkich respondentów podzieliliśmy na 16 grup wiekowych, każda grupa o rozpiętości 5 lat. Na osi OX zaznaczono, która grupa jest aktualnie opisywana. Wiek tu podany dotyczy roku 2003. Dla każdej grupy na górze wykresu zaznaczono ile średnio lat edukacji przybyło osobom w tej grupie wiekowej po dwóch latach badania. Czyli przykładowo, w najmłodszej grupie wiekowej, osób od 15 do 20 lat, deklarowana liczba lat nauki w roku 2005 wzrosła o 1.4 w stosunku do roku 2003. Jeżeli spojrzymy na grupę osób od 21 do 25 lat to liczba lat edukacji wzrosła o dwa razy mniej, czyli 0.71 roku. Długość czerwonej kreski nad liczbą jest proporcjonalna do tej liczby. Umożliwia to szybką orientację w jakim wieku Polacy najwięcej się uczą. Największy przyrost liczby lat edukacji obserwujemy w grupie osób 15-20 lat. Ale osoby starsze też się uczą. Przykładowo w grupie 40-45 lat przybyło przez 2 lata średnio 0.14 lat edukacji. Pytanie oczywiście czy edukowali się dodatkowo Ci już z dużym stażem, czy też raczej osoby o krótkiej historii edukacji uzupełniały swoją wiedzę. Na to pytanie odpowie pozostała część wykresu.

Dla każdej grupy wiekowej przedstawiono za pomocą wykresu pudełkowego rozkład liczby lat nauki w roku 2003. Z tego wykresu można odczytać ile interesująca nas grupa miała lat nauki na koncie w roku 2003. Z każdego wykresu pudełkowego wychodzi kolekcja kresek na prawo do góry. Każda z tych kresek dotyczy podgrupy osób o zadanej liczbie lat edukacji i zadanym wieku. Przykładowo najgrubsza, cała ceglana, kreska w lewym dolnym brzegu dotyczy osób będących w grupie wiekowej 15-20 lat i mających w roku 2003 na koncie 9 lat edukacji.

Długość tej kreski i kolor opisuje ile osób kontynuowało naukę i jak długo. Grubość kreski odpowiada liczbie osób w danej grupie, jest ona proporcjonalna do logarytmu dwójkowego z liczby osób. Ale na potrzeby tego opisu wystarczy zauważyć, że im grubsza kreska tym więcej osób było w tej grupie.  Mamy wieć grupę 15-20 latków, którzy w roku 2003 mieli 9 lat edukacji, zapytamy się teraz ilu z nich kontynuowało edukację i przez jak długo. A dokładniej zapytamy się jak wyglądały w tej grupe kwantyle liczby lat edukacji rzędu 0.25, 0.5, 0.75 i 0.9 po dwóch latach. Im ciemniejszy kolor tym niższy kwantyl, czyli więcej osób uczyło sie przynajmniej tyle lat. Ponieważ liczbę lat edukacji podawano jako liczbę całkowitą, to każda z tych kresek może mieć długość 0, 1 lub 2. Wspomniana już gruba ceglasta kreska ma długość 2, co oznacza, że ponad 3/4 osób (ponieważ kwantyl 0.25 oznaczany jest ciemnym bordowym) kontynuowało edukacje przez 2 lata i w roku 2005 miało już na koncie 11 lat edukacji. Poniżej tek kreski jest inna dwukolorowa kreska, która odpowiada stwierdzeniu że ponad 1/2 osób startujących w roku 2003 z 8 latami edukcji kontynuowała edukację przez 2 lata, a ponad 3/4 z nich przez przynajmniej jeden rok.

Generalnie im ciemniejsza kreska tym więcej osób a im dłuższa to tym dłuzej się eudkowało. Pojedyncze kropki czerone oznaczają, że w danej grupie nikt nie zdecydował się na kontynuowanie nauki.

Co ciekawego widać? Np. że w grupie 30-35 lat są i osoby które uzupełniają edukację o studia wyższe i podyplomowe (15 i więcej lat edukacji), jak równiez osoby, które kończa szkołę średnią. W grupach osób starszych studentów jest już mniej, ale cały czas jakiś procent osób (ponad 10% – kolor beżowy) uzupełnia edukację najpewniej o szkołę średnią.

Zobaczmy teraz podobny wykres pokazujący lata 2009-2011.

Jeżeli otworzyć oba powyższe obrazki na dwóch sąsiednich zakładkach to łątwiej zobaczyć czym się różnią. Generalny wniosek jest taki, że jest więcej i też ciemniejszych kresek, więc w ostatnich dwóch latach więcej osób edukowało się (lub przynajmniej tak twierdziło w badaniu). Nawet w grupie osób starszych, powyżej 75 roku życia obserwuje się znaczny (ponad 25%) odsetek osób uzupełniających edukację, szczególnie podstawową.

Również porównując czerwone paski i procenty na górze wykresu widzimy że średni przyrosk liczby lat edukacji jest większy pomiędzy latami 2009-2011 niż 2005-2003.

 

Problem z powyższymi wykresami jest taki, że poniewa lata edukacji są dyskretne, również kwantyle sa dyskretne i nie widać gładkiego rozkładu. Poniżej więc przedstawiono długością kreski coś innego, minowicie frakcję osób, które edukowały się przynajmniej określoną liczbę lat. Jako przykład wybierzmy grupę osób w wieku 15-20 lat, które w roku 2003 miały na koncie 13 lat edukcji (kreska najbardziej na lewo a później do góry). Frakcje osób można odczytać porównując długość tego odcina z odcinkiem od wykresu pudełkowego o najbliższej szarej pionowej linii. W rozważanej grupie mniej więcej 1/3 tego odcinka pomalowana jest na kolor średnio fioletowy, kolejna jedna trzecia na kolor jasno fioletowy a pozostała 1/3 nie jest pomalowana. Oznacza to, że mniej więcej (dokładne liczby trudno odczytać bez skali, nie są jednak tak bardzo ważne) 33% osób z w wieku 15-20 lat , które miały już na koncie 13 lat edukacji kontynuowały edukację przez kolejny rok, 33% osob kontnuowała edukację przez dwa lata, a reszta nie kontynuowała edukacji. Porównując długości kresek w każdej z grup wiekowych łatwiej nam ustalić kto w danej grupie wiekowej kontunuował edukację i jak długo.

I wkres dla lat 2009-2011

 

Zdaję sobie sprawę, że wykresy wymagają trochę koncentracji by je odczytać. Który z nich jest czytelniejszy i lepiej nadaje się do przedstawiania kontynuacji eduakcji (ceglasty czy fioletowy)? Czy te wykresy sa jakkolwiek czytelne? Czy może macie pomysł jak inaczej przedstawić tą samą informację by była czytelniejsza? Czy jest w tych wynikach coś naprawdę zaskakującego?

 

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.

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?

Zmiany zamożności Polaków

Kontynuujemy analizy danych z badania Diagnoza Społeczna. Średnia pensja w Polsce rośnie szybciej nawet niż inflacja. Można więc uważać, że jest coraz lepiej.

Ten i kolejny wpis powstał ponieważ po pierwsze wyniki są ciekawe, a po drugie, ponieważ będzie okazja wprowadzić kolory w analizie gradacyjnej.

W kwestionariuszu dla gospodarstw piąte pytanie dotyczy sposobu gospodarowania dochodem, czy na wszystko wystarcza pieniędzy, czy wystarcza ale przy oszczędnym życiu, czy brakuje na coś. Będziemy poniżej porównywać odpowiedzi pomiędzy latami 2005 (kolumna „cl7”) i 2001 (kolumna „fL5”). Do porównania odpowiedzi w tych dwóch rocznikach wykorzystamy analizę gradacyjną.

Kilka linii kodu w R

i mamy następujący wykres.

Etykiety można by skrócić, ale póki są czytelne nie walczyłem z nimi. W porównaniu z rokiem 2005 w roku 2011 ubyło o około jedną trzecią osób, którym wystarcza co prawda na najtańsze jedzenie, ale nie wystarcza na inne potrzeby. Liczba osób, którym wystarcza i jeszcze oszczędzają wzrosła trzykrotnie.

Podział obowiązków w rodzinie

Dzisiaj ponownie bazujemy na danych z Diagnozy Społecznej (więcej informacji o tym zbiorze danych tutaj). W ankiecie z roku 2009 znalazło się pytanie, jaki powinien być twoim zdaniem podział obowiązków w rodzinie, w zależności od tego czy są w rodzinie dzieci i w jakim wieku (pytanie 107 kolumna ep107.1-ep107.4).

Pytanie dotyczyło w gruncie rzeczy tego, kto powinien pracować a kto nie. Z podtekstem że osoba niepracująca będzie zajmowała się domem i dziećmi.

Wyniki obrazuje poniższa tabelka, a przez resztę wpisu będziemy zastanawiać na jakim wykresie taką tabelę należy przedstawić.

W każdej kolumnie procenty grzecznie sumują się do 100%.

 

W oczy rzuca się brak symetrii, przy założeniu że ktoś powinien zrezygnować z pracy najczęściej pada na kobietę (uwaga 1: zobaczymy później jak to wygląda w rozbiciu na płeć, uwaga 2: to wyniki ankiet a nie moje opinie, feministki, proszę nie rysujcie mi lakieru na moim rowerze). Niewiele jest osób, które przy dzieciach do 6 lat model oboje rodzice pracują jest najlepszy.

Przejdźmy do wykresów. Powyżej różnych modeli podziałów obowiązków jest 6, ale w sumie interesować będą nas trzy główne: oboje rodzice na pełny etat, jeden z rodziców na część etatu, jeden z rodziców nie pracuje. Na pierwszym wykresie będziemy pokazywać zakumulowane procenty (kody w R poniżej)

 

Takie wykresy są często krytykowane ponieważ udział procentowy zielonej i fioletowej grupy ciężko porównać z uwagi na przesunięty punkt 0. Drugi częsty powód krytyki to łączenie odcinkami procentów, które sugeruje że jest jakiś trend (liniowy) w wynikach pomiędzy kategoriami.

Tak więc nawet jeżeli graficznie ten wykres mi się najbardziej podoba wypada zobaczyć jeszcze kilka innych wariantów.

Wykres paskowy, bez sugestii co do liniowości trendu.

I jeszcze jeden paskowy, ale bez skumulowania procentów

I jeszcze wykres punktowy. W teorii wykres punktowy łatwiej czytać niż powyższy, ponieważ oś OY nie jest tak szeroka.

Cztery wykresy. Podejrzewam że każdy znajdzie swojego amatora. A wracając do treści pokazywanej na tych wykresach to następnym razem wrócimy do tematu jak te proporcje zmieniają się w grupach wiekowych i płciach.

 

Co jest ważne w życiu? w zależności od wieku

Cztery dni temu (tutaj) badaliśmy jak zmieniały się wartości ważne w życiu, bazując na danych z Diagnozy Społecznej. Można jednak przypuszczać że to co jest ważne w życiu zależy od wielu czynników, ale z pewnością równiez od wieku.

Więc powtórzyliśmy analizę gradacyjną w czterech grupach wiekowych. najpierw zbadaliśmy kwartyle roku urodzenia i dało nam to cztery mniej więcej równoliczne grupy respondentów, urodzonych w latach: 1910 – 1952, 1952-1971, 1971-1987, 1987-2011.

Grupa wiekowa 1910-1952.

 

W grupie 1951-1971.

W grupie 1971-1987

W grupie 1987 – 2011

 

Z powyższych wykresów wynikają przynajmniej dwie rzeczy:

– najsilniej zmienia się system wartości ludzi w wieku 30-40 lat. Odległość krzywej od przekątnej jest największa. Analiza gradacyjna dowiodła swojej wartości w wyraźny sposób podsumowując wielkość zmian. Dla respondentów w wieku 30-40 liczą się i to coraz bardziej dzieci i udane małżeństwo.

– zmieniają się też rzeczy uznawane za ważne. W grupie osób najmłodszych wysokie miejsce zajmują pieniądze i praca, a starszych grupach i pieniądze i płacę wyprzedzają udane małżeństwo i dzieci.

 

Co jest ważne w pracy?

Dwa  dni temu pokazywaliśmy przykład analizy gradacyjnej w badaniu co jest ważne w życiu. Dziś zobaczymy co dla ankietowanych jest ważne w pracy. W latach 2007 i 2011 zadano respondentom pytanie o to co jest ważne w pracy. Podobnie jak w przypadku wartości ważnej w życiu, można było wybrać maksymalnie trzy cechy dorej pracy (z listy: Brak napięć i stresów, Duza samodzielnosc, Możliwość rozwoju osobistego, Praca zgodna z umiejetnosciami, Możliwość szybkiego awansowania, Stabilnosc zatrudnienia, Dogodne godziny pracy, Możliwość wykonywania pracy w domu, Dlugi urlop, Zajecie powazane przez ludzi, Odpowiednia płaca, Inne czynniki).

Używając tych samych technik co ostatnio, sprawdzimy czy oczekiwania w stosunku do pracy sie zmienily.

 

Po prawej stronie przedstawiono dla każdej cechy dotyczącej pracy informacje jaka frakcja osób uznała tę cechę za ważną. Po lewej stronie mamy wynik jednowymiarowej analizy gradacyjnej.

Zauważmy na początek że odległość tej krzywej od przekątnej, jest dużo większa niz w przypadku pytan o to co ważne w życiu. Wydaje sie to zgodne z intuicja ze pogląd dotyczący wartości waznych w zyciu zmienia sie wolniej niz dotyczacy wartosci waznych w pracy.

Największe zmiany dotyczyły wzrostu liczby osob uwazajacych ze wazna jest stabilnosc zatrudnienia (z 11.8% do 19% a więc zmiana o ponad 60%), duża samodzielnośc w pracy, brak napiec i stresow. Mniej osób za najważniejsze wymienia odpowiednia place czy prace zgodna z umiejętnościami. Mam nadzieje ze jest to zwiazane z tym ze podstawowe potrzeby zwiazane z wystarczająca placa i zatrudnieniem w odpowiednim miejscu zostaly zaspokojone i teraz osoby mogą sie skupic na wyzszych potrzebach. Moze to tez byc związane z rosnacym wiekiem respondentów, sa o 4 lata starsi moga juz cenic inne rzeczy.

Warto zrobic taka analize w podziale na grupy wiekowe, moze wiec wrocimy do tego tematu nastepnym razem.

 

Co jest w życiu ważne?

Ostatnio moi magistranci na mini-seminarium prezentowali jednowymiarową analizę gradacyjną. Służyć może ona między innymi do porównania czy pomiędzy dwoma wektorami obserwacji zmieniła się struktura odpowiedzi. Wygląda to na ciekawą metodę, więc warto ją zaimplementować w R i zobaczyć jak dziala.

Kilka dni temu pisaliśmy o zbiorze Diagnoza Społeczna (http://smarterpoland.pl/index.php/2011/10/diagnoza-spoleczna-2011/), już dołączony do repozytorium. Wykorzystamy go na potrzeby badania analizy gradacyjnej.

W latach 2005 i 2009 w Diagnozie Społecznej ankieterzy pytali respondentów o wskazanie wartości ważnych w ich życiu (zmienne cp2.1-cp2.14 i ep2.1-ep2.14) . Badany mógł wybrać maksymalnie trzy odpowiedzi ze zbioru 14 możliwych (PIENIADZE, DZIECI, UDANE MALZENSTWO, PRACA, PRZYJACIELE, OPATRZNOSC, BOG, POGODA DUCHA, OPTYMIZM, UCZCIWOŚĆ, ŻYCZLIWOŚĆ I SZACUNEK OTOCZENIA, WOLNOSC, SWOBODA, ZDROWIE, WYKSZTALCENIE, SILNY CHARAKTER, INNE). Wykorzystamy analizę gradacyjną by sprawdzić czy zmieniła się struktura wartości w badanej grupie respondentów w przeciągu czterech lat.

Zaczniemy od analizy dwóch czternastoelementowych wektorów. Każdy wektor określi jaka frakcja osób uznała daną wartość za ważną w ich życiu. Porównamy oba wektory, by sprawdzić które wartości zyskały, a które straciły na znaczeniu pomiędzy rokiem 2009 a 2005.

 

 

Kod generujący powyższy rysunek znajduje się poniżej. Po lewej prezentowane są wyniki analizy gradacyjnej, po prawej zwykły wykres rozrzutu. Oba wykresy prezentują te same dane.

Zacznijmy od prawego wykresu. Frakcje osób uznających daną wartośc za ważną unormowano tak, by po zsumowaniu wszystkich wartości otrzymać 1. Osobno dla roku 2005 osobno dla 2009. Każdy punkt opisuje jedną wartość. Współrzędne punktu odpowiadają unormowanej frakcji osób uznających tą wartość za ważną w roku 2005 i 2009. Dorysowano przekątną, dzięki temu punkty pod przekątną odpowiadają wartościom których znaczenie spadło do roku 2009, punkty nad odpowiadają wartosciom których znaczenie wzrosło.

Po lewej stronie przedstawiono te frakcje w sposób skumulowany. Kolejność odpowiada procentowej zmianie ważności w stosunku do roku 2009. Na początku wykresu, przy punkcie 0,0 znajdują się wartości, które zyskały na znaczeniu. Pod koniec wartości, ktore stracily na znaczeniu. Długość kroku odpowiada frakcji osob uznających daną wartość za ważną. Odległość wyrysowanej łamanej od przekątnej obrazuje jak bardzo zmieniła się struktura wartości. W tym przypadku łamana jest blisko przekątnej, więc ludzie nie zmienili istotnie swojego systemu wartości. Dzieci i zdrowie zyskały na ważności. Pieniądze i praca straciły, choć w obu przypadkach nie są to duże zmiany.

 

Rysujemy rozkład cen krok po kroku, część 4

Czas na ostatnią część wyjaśnień krok po kroku jak konstruowane były wykresy o cenach mieszkań.
Tym razem wykorzystamy wykres pudełkowy pokazany na wpisie tutaj do pokazania rozkładów cen w dzielnicach Warszawy.

Wczytujemy pierwsze 33 linie kodu z poprzedniego wpisu a następnie uruchamiamy linie 142-187. Wyjaśnijmy od razu po co była funkcja nazwyIprocenty(). Otóż w pakiecie lattice dosyć łatwo narysować wykres w podziale na poziomy pewnej zmiennej grupującej. Grupa obserwacji odpowiadająca poszczególnym poziomom rysowana jest na kolejnym panelu. Nazwy poziomów znajdują się w nagłówku panelu. W naszym przykładzie funkcja nazwyIprocenty() zmieniła nazwy wszystkich poziomów w ten sposób, że do nazw dzielnic dodano cztery liczby określające procentową zmianę ceny w określonej dzielnicy (zmianę liczoną na różne sposoby, zobacz komentarze wewnątrz tej funkcji).

Dzięki temu warunkując po zmiennej dzielnica2 powinniśmy uzyskać zbiór wykresów pudełkowych w rozbiciu na dzielnicę.
Poniższy kod od kodu z poprzedniego wpisu różni się praktycznie wyłącznie formułą cenam2~dataF|dzielnica2.

Wadą tego wykresu są ponownie dzielnice w których mało jest oferowanych mieszkań. Usuńmy dzielnice w których jest mniej niż 1000 mieszkań średniej wielkości oferowanych do sprzedaży w ostatnich 4 latach. Poniżej prezentujemy tylko kod usuwający odpowiednie wiersze, następnie używamy tego samego kodu co powyżej aby wygenerować wykres dla dzielnic, tym razem już tylko 12.

Rysujemy rozkład cen krok po kroku, część 3

Dzisiaj kontynuujemy rozpisywanie krok po kroku wizualizacji cen mieszkań. Ten wpis poświęcony jest wykresowi pudełkowemu. Kory w programie R użyte poniżej można znaleźć na stronie tutaj.

Podobnie jak poprzedni pierwsza część to przygotowanie danych, druga to ich wizualizacja.

Częśc 1.

Dane są wczytane, czas na wykres. Wykorzystamy funkcję bwplot() z pakietu lattice.
Narysujemy jak zmieniają się ceny m2 średniej wielkości mieszkań w kolejnych miesiącach.

Nie wygląda to najlepiej, zajmijmy się na początek osiami. Ponieważ cena jest zmienną silnie prawo skośną, przedstawimy ją na osi logarytmicznej. Ponieważ etykiety na osi OX zachodzą na siebie to zmniejszymy je i pokażemy pionowo.

Przy takiej rozpiętości na osi OY trudno analizować delikatne zmiany w cenach mieszkań, więc w dalszej części zawęzimy zainteresowania do przedziału osi OY od 7 do 14k.

Trudno zauważyć jakiś trend. Dorysujmy więc krzywą trendu liniowego przedefiniowując funkcję rysującą panel. Nowa funkcja rysująca panel rysuje linie pomocnicze siatki, rysuje wykresy pudełkowe używając panel.bwplot() oraz dorysowuje linię odpornej regresji liniowej.

Trend liniowy liczony na wszystkich punktach to tylko jedno z możliwych podejść do zagadnienia oceny trendu. Dodajemy trend lokalnie ważony wielomianami stopnia pierwszego oraz trend liniowy wyznaczony tylko na podstawie median cen w kolejnych miesiącach.

Mało czytelne są te linie trendu. Narysujemy je grubszą kreską i dodatkowo użyjemy kolorów z pakietu RColorBrewer, które powinny być przyjemniejsze dla oka.

Solą w oku są już tylko te niebieskie wykresy pudełkowe, lepiej wyglądałyby one w kolorze szarym, mają być tłem dla linii trendu. Aby zmienić kolor tych punktów używamy funkcji trellis.par.set() i trellis.par.get().

Już jest nieźle. Ostatnia modyfikacja wykresu to dodanie opisu wykresu z liczbą procent o który zmieniła się cena mieszkania. Konstruujemy funkcję, która te procenty wyliczy i doklei do nazwy dzielnicy. Przy da się to do kolejnego przykładu, tutaj wyglądać może trochę sztucznie.

Wykres gotowy, w kolejnym odcinku pokażemy jak wygenerować taki wykres dla wszystkich dzielnic.

Rysujemy rozkład cen krok po kroku, część 2

Kontynuując temat z wczoraj, narysujemy rozkład cen mieszkania dla każdej z  dzielnic Warszawy.

Punktem wyjścia jest przygotowanie danych, wykonajmy pierwsze 32 linie tak jak w poprzednim wpisie.

Aby wyświetlić na rożnych panelach dane dla kolejnych dzielnic, wystarczy zmodyfikowac formułę na cenam2~data|dzielnica, oraz za zabiór danych wskazać mieszkaniaKWW2011Warszawa2.

Kolejne panele przedstawiają kolejne dzielnice, ale ich kolejność jest alfabetyczna. Taka sama jak kolejność poziomów zmiennej czynnikowej dzielnica. Nie zawsze kolejność alfabetyczna będzie najlepsza. Użyjemy funkcji reorder by zmienić kolejność poziomów tak by odpowiadała medianie ceny metra kwadratowego w danej dzielnicy. Kod generujący obrazek będzie taki sam, zmieni się tylko kolejność dzielnic.

Dla niektórych dzielnic jest mało punktów, co powoduje, że trudno mieć zaufanie do wyznaczonego trendu. Tym razem usuniemy te dzielnice, dla których nie ma przynajmniej 2000 wierszy. Kod generujący wykres jest bez zmian, usuwamy tylko obserwacje z dzielnic w których obserwacji było mniej niż 2k.