Sider med ekstra påfyll

Viser innlegg med etiketten ggplot2. Vis alle innlegg
Viser innlegg med etiketten ggplot2. Vis alle innlegg

fredag 2. april 2021

Aldersfordeling- og mengde i Norges fylker (i et mosaikk-diagram)

Klikk for å se (hakket) større.

Når vi sammenligner forskjellige grupper, steder eller hva det måtte være statistisk, så er det gjerne en av to ting vi snakker om. Bor det flere eldre i et fylke som Nordland enn i Oslo, eller er det en større andel eldre i Nordland enn i Oslo.

Jeg er glad i andeler, som er en form for relativ verdi. Andelen eldre er stor eller liten i forhold til (relativt til) den totale befolkningen i fylket. Antall eldre er ett, absolutt tall. Det tallet forandres ikke noe av hvor stor resten av befolkningen er.

Hvorfor babler jeg om dette? Jo, fordi man stort sett må velge å vise enten relative eller absolutte verdier når man lager en graf om noe.

Med såkalte mosaikk-diagram kan man imidlertid vise begge deler!

Mosaikk-diagram, er ikke så ulike stablete søylediagram som summerer til 100 prosent. I slike søylediagram er vi vant til at høyden på søylene og søylebitene angir en verdi. I et mosaikk-diagram kan i tillegg bredden på søylene bety noe.

I tilfellet mitt kan det være litt forvirrende å snakke om bredde og høyde, for jeg har lagt diagrammet mitt på siden, så du skal slippe å snu på hodet for å lese fylkesnavnene. I mitt tilfelle viser bredden på søylebiten hvor stor andel den aldersgruppen utgjør av befolkningen i hvert fylke. I Oslo er søylebiten for voksne (20-64 år) bredere enn i Trøndelag fordi en større andel av befolkningen i Oslo (66,3 %) er voksne enn i Trøndelag (59 %). 

I tillegg viser høyden på søylene hvor  mange som bor i hvert fylke, uavhengig av aldersfordelingen. Høydeforskjellen mellom søylene til Viken og Vestland viser for eksempel at dobbelt så mange bor i Viken som i Vestland. Dette gjør at arealet på senior-rektangelen angir hvor mange eldre som bor i hvert fylke.

Vi kan for eksempel se nå at hvis du møter på 100 tilfeldige mennesker på i Innlandet, så er det mer sannsynlig at du møter på en over 65 år enn hvis du møter på 100 tilfeldige mennesker i Oslo. Rett og slett fordi en større andel av befolkningen i Nordland er 65 år og eldre enn i Oslo.

Men, vi kan også se at  det bor flere eldre mennesker i Viken enn i Nordland, selv om prosentandelen er lavere, rett og slett fordi det bor mye mer folk i Viken i utgangspunktet. Generelt, legg merke til hvor mye høyere Viken er enn alle andre fylker ...

Et par siste ting om valg i denne grafen. Jeg valgte at andelen eldre skulle stå i sentrum. Derfor rangerte jeg alle fylkene etter andelen eldre. I tillegg ga jeg denne aldersgruppen en mye sterkere farge enn de andre aldersgruppene. Gulaktige farger er ekstremt effektive til å fremheve noe fordi de kan være både lyse og sterke (mette/saturated) samtidig. Samtidig knotet jeg en del med fargehjulet til Adobe for å finne dempede farger som samtidig fungerer bra med denne gulfargen. Jeg valgte også å ikke angi verdier for hvor mange som faktisk bor i de forskjellige regionene, rett og slett fordi jeg ikke vil oversvømme grafen med altfor mange detaljer.

Når det gjelder arbeidsgangen, så lagde jeg først grafen i statistikkprogrammet R, hvor jeg også lastet ned statistikken fra SSB. Koden kan du se under. Deretter eksporterte jeg en svg-fil til Inkscape – som er et veldig habilt gratisalternativ til Adobe Illustrator – og gjorde en god del estetisk finpuss der. Svg-fil er viktig, for det betyr at alle enkeltelementene i grafen er redigerbare vektorer og kan flyttes og endres på i Inkscape. Jeg kunne nok tatt meg av mye mer av den estetiske finpussen i R, men var litt gøy å bare knote i Inkscape. Lenge siden jeg har gjort den type grafisk arbeid.

onsdag 1. januar 2020

Reiser virkelig flere med kollektivtransport?

Klikk for å se større.
En ganske selvforklarende og enkel graf. Statistisk sentralbyrå (SSB) har noen lignende grafer, som også viser at antall passasjerer med kollektivtransporten øker. Problemet med de grafene er at de viser antall kollektivreisende i absolutte tall, og tar ikke høyde befolkningsveksten. Selv om det er flere som reiser med kollektivtransport, så kan det i så fall være en lavere andel som reiser med kollektivtransporten.

Grafen over her tar høyde for det, og den viser at andelen som reiser med kollkektivtrqansport øker. Nå er det imidlertid to ting jeg må bemerke.

For det første, så ble metoden for å registrere kollektivpassasjerer endret i 2017 blant mange av kollektivtransportsøknadene, ifølge SSB. Vi bør altså ikke legge for mye inn i tolkningen av 2017 og 2018 sammenlignet med tidligere år.

For det andre, så behøver det ikke nødvendigvis å være flere enkeltpersoner som har begynt å reise. En passasjer er i denne sammenheng én påstigning, altså bør det tolkes mer som enkeltreiser. Med andre ord er det antall reiser som har økt.

Min egentlige motivasjon for å lage denne grafen var å bli bedre kjent med å bearbeide utseendet til grafen, når jeg lager den med ggplot2-pakken i R. Ggplot2 og R er utrolig fint til å lage grafer med, og det er ganske enkelt å velge mellom en del forhåndsdefinerte utseender (vil du ha Economist-stil på grafen din? Bare å skrive inn et ord i syntaksen din).

Under er koden min. Det fine med denne koden er at den henter statistikken direkte fra SSBs API, ved hjelp av PxWebApiData-pakken, som visstnok brukes til å kommunisere med en god del offentlige statistikkbanker i Europa og det som måtte være.


onsdag 22. august 2018

Ungdomsidrett og sosial bakgrunn i Oslos bydeler

Innimellom tenker jeg at hvis jeg hadde blitt en politiker, så hadde min kampsak nummer én vært gratis barneidrett. Ikke bare er det gøy og artig med fysisk aktivitet, men det er viktig i et folkehelseperspektiv.

Da kan det være brutalt å tenke på hva treningsutstyr, lisenser og utgifter kan koste, spesielt for familier som ikke har altfor god råd.

Derfor leste denne artikkelen fra NRK, om at klubben Brodd har kuttet ut årskontingent for de yngste, med stor interesse.

I tillegg synes jeg at fotballbladet Josimar har hatt noen interessante reportasjer om ulikhetene i fotballtilbud og -muligheter på østkant og vestkant i Oslo.

Og siden jeg holder på å lære meg R og pakken ggplot2 for datavisualisering, hvorfor ikke lage en graf om ungdoms deltakelse i organisert friidrett?
Klikk for å se større. Sånn faktisk.


Hvis du klikker på grafen, slik at den blir større, så viser den hvor mange prosent av ungdommen med henholdsvis lav middels og høy sosial bakgrunn i hver bydel som deltar i organisert idrett.

Bydelene er sortert fra venstre til høyre etter andelen ungdom (ungdomsskole-elever og videregående skole-elever) med lav sosial bakgrunn som deltar i organisert idrett.

De stiplete linjene viser gjennomsnittet i Oslo for ungdom med de forskjellige bakgrunnene.

Tallene er hentet fra rapporten Ung i Oslo 2015, skrevet av Patrick Lie Andersen og Anders Bakken, via Oslo statistikkbank.

Hva menes egentlig med sosial bakgrunn? "I undersøkelsen er dette målt gjennom et samlemål for familiens sosioøkonomiske ressurser (definert som «summen» av foreldrenes utdanningsnivå, bøker i hjemmet, om man drar på ferie, har eget soverom, om man har bil etc.)." (Andersen og Bakken 2015, side 4)

Ikke overraskende, så er trenden at ungdom på Østkanten i gjennomsnitt deltar mindre i organisert idrett enn de på Vestkanten (Nordstrand inkludert). Dette gjelder uansett hvilken sosial bakgrunn ungdommene har.

Det er det grove, overordnete bildet, så er det selvfølgelig variasjon og detaljer som viker litt fra denne historien. For eksempel er idrettsdeltakelsen blant ungdom med høy bakgrunn i Stovner markant høyere enn i de andre bydelene i Groruddalen. Bare Vestre Aker har høyere idrettsdeltakelse blant de med høy sosial bakgrunn enn Østensjø. Nå er Østensjø en bydel med særskilt sterke idrettstradisjoner- og miljøer.

Her kan jeg også legge til at dette datamaterialet er basert på en spørreundersøkelse med et utvalg. Jeg har ikke tittet nøye nok på rapporten til å se om jeg kan beregne og vise konfidensintervall. Eller for å si det på denne måten: Det kan hende at de forskjellene vi ser her blant de som svarte på undersøkelsen ikke finnes hvis vi skal snakke om alle ungdommene i bydelene.

Frogner er et markant unntak blant bydelene i vest. Jeg kan bare spekulere i at det er fordi Frogner er en relativt "bypreget" bydel med ikke altfor mange idrettsmuligheter uten å måtte reise et stykke.

Det som jeg synes er mest interessant av alt i denne figuren, er det som skjer med ungdom med lav sosial bakgrunn i bydelene på Vestkanten, altså Ullern, Nordstrand, Vestre Aker og spesielt Nordre Aker.

Når man anekdotisk kan snakke om at ungdommen på Vestkanten er mer aktive i idrett enn de på Østkanten, så kunne man spekulere i at det er fordi ungdom på Vestkanten generelt er mer velstående og har økonomisk mulighet og oppfølging i hjemmet til å satse 110 prosent på å bli den nye Petter Northug eller Martin Ødegård.

Derfor er det interessant å se at idrettsdeltakelsen i disse vestkant-bydelene er markant høyere også blant ungdom med lav sosial bakgrunn.

I mine studier på samfunnsgeografi hadde vi en del om nabolagseffekter, altså at nabolaget du bor i har noe å si for dine livsmuligheter, uavhengig av hvilke gener du har eller hvor mange bøker foreldrene dine har i hylla. Altså, hva har det å si å vokse opp i et nabolag med høy velstand kontra lav velstand. Har det noe å si å vokse opp i et område med kommunalboliger?

Noe som man har sett i studier i USA (linken går til en artikkel jeg hadde på pensum av George Galster, hvor dette er omtalt), er at barn i mindre velstående familier kan prestere litt bedre hvis de bor i områder med litt mer velstående familier. Man kan da snakke om en peer-effekt: At du påvirkes av de du ser på som dine "likemenn", altså de du går i klasse med.

Min antakelse er at en slik effekt kan være med på å forklare idrettsdeltakelsen til ungdom med lav sosial bakgrunn på Vestkanten.

Under the hood

Og over til noe helt annet. Fikk du med deg at jeg lagde den grafen i R? Den viktigste motivasjonen for å lage denne grafen var jo at jeg holder på å lære meg å bruke R, og da blant annet datavisualiseringspakken ggplot2. Hvis du er nysgjerrig på hvordan jeg lagde den, så har du koden min her.

Dette er aller første gang jeg lager min helt egen graf i R, så koden er nok helt håpløs. Transformeringene og databehandlingen for å klargjøre tallene for grafen kan nok skrives mye mer effektivt, med hjelp av litt pipes. Jeg fikk god hjelp av googling og denne boka her, R for Data Science, som er åpen og gratis på internett. Den holder deg trygt i hånda når du er helt newbie. Anbefales!