DATAØVING 2 – Introduksjon til Stata II Oversikt - Målenivå - Målefeil - Å velge land (Split file) - Histogram, skewness & kurtosis - Box plot - Q-q plot - Missing Målenivå Det er viktig når man velger variabler man skal bruke at man er klar over hvilket målenivå de er på. De ulike målenivåene vi kan grovt deles opp i to kategorier: diskré (også kalt kategorisk) og kontinuerlige. DISKRE/KATEGORISK Gjensidig utelukkende Kan rangeres Kan si noe om avstaden mellom verdiene Naturlig nullpunkt Nominal X Ordinal X X KONTINUERLIG Intervall X X X Forholdstall X X X X Diskre/Kategorisk Nominal: Enhetene kan bare klassifiseres i gjensidig utelukkende grupper. Verdiene kan ikke rangeres på en logisk måte. Eksempel: ja/nei-spørsmål, yrke kjønn, land, region. Ordinal: I tillegg til å være gjensidig utelukkende, er det en logisk rangering av variabelverdiene. Eksempler er holdningsspørsmål som ”Hvor interessert er du i politikk?” hvor svaralternativene kan rangeres fra ”veldig interessert” til ”ikke interessert i det hele tatt”. Kodet (1-2-3-4). Alternativene går som regel fra et ytterpunkt til et annet, men vi kan ikke si noe nøyaktig om avstanden mellom svarene. 1 Kontinuerlig Intervall: Disse variablene kan utrykkes i tall, som kan plottes inn i en skala etter hverandre, slik at de gir mening. Avstanden mellom svaralternativene har betydning, det er mulig å spesifisere intervaller mellom verdiene. Eksempel: Temperatur, IQ. Forholdstall: Som intervall, men med en ekstra betingelse: Alternativene forholder seg til et bestemt nullpunkt. Eksempel: Alder, antall år utdanning. Vekt, høyde, inntekt, landareal, BNP per innbygger. Hva har det å si? For at den lineære regresjonsanalysen (OLS) skal gi matematisk mening, kreves det at den avhengige variabelen er kontinuerlig. Men hvis en ordinal variabel har fem kategorier (svaralternativer) eller flere, kan den i praksis behandles som en kontinuerlig variabel. For avhengig variabel med to verdier bruker man logistisk regresjon. Denne skal kodes til verdiene 0 og 1. Dere kan også bruke en variabel med flere verdier, og kode den om til to. Mer om dette under! Det må være minst 10 % i den ene gruppen for å gjøre analysen. Det er derfor viktig at du sjekker målenivået og ser på fordelingen på den avhengige variabelen din. Målefeil Det finnes to typer målefeil: tilfeldige og systematiske. De tilfeldige er vanskelige å hindre, og vi kan for så vidt leve med dem. Disse følger ikke noe mønster. De systematiske målefeilene følger derimot et mønster, og er et problem. De er et resultat av dårlige målemetoder eller feilaktig oppfatning av sammenhengen mellom virkelighet og data. Vi snakker om to typer troverdighet for vitenskapelig analyse: Reliabilitet eller pålitelighet, er spørsmålet om gjentatte målinger med samme måleinstrument gir samme resultat. Hvis man gjør det riktig, vil man få omtrent samme resultat når man repeterer en bestemt type måling. Vil en annen forsker kunne få samme resultat som deg hvis han bruker samme metode på samme utvalg? Når en skal vurdere reliabiliteten av forskningen, vurderer en datasettets kvalitet. Validitet eller gyldighet, er spørsmålet om en faktisk måler det man er ute etter å måle. Er det sammenheng mellom indikatorene og det teoretiske begrepet du skriver om? Er dataene dine en gjengivelse av egenskapene ved det du studerer? 2 Det første vi gjør er å starte en ny loggfil for øving 2 via menylinjen (se øving 1). Deretter slår vi av «more» funksjonen: Command: set more off enter Å velge land (Split file) Når du laster ned ESS datasett fra it's learning inneholder dette alle landene som deltok i undersøkelsen. For å se alle landene som inngår i dette ESS datasettet kan vi kjøre en frekvenstabell. På øving 1 gjorde vi dette gjennom kommandovinduet, nå skal vi prøve dette gjennom menyer, trykk: Statistics Summaries, tables and tests Frequency tables one-way table I boksen "Categorical variable" skriver vi inn variabelnavnet (cntry) eller velger den fra variabellista. Trykk OK. Vi har nå fått opp en tabell med alle landene som er inkludert i dette ESS datasettet, navngitt med bokstavkoder. Hvilke land de ulike bokstavkodene representerer finner man på nettsidene til ESS. Det er også lagt ut en oversikt over bokstavkodene til landene som er med i ESS6 i mappa «dataøvinger» på its learning. Av tabellen ser vi at blant annet er Norge (NO) og Polen (PL) med: 3 Til oppgaven din vil du mest sannsynlig bare se på ett, to eller tre land. Dette betyr at du må fjerne resten av landene. For eksempel hvis du ønsker å se på helse og fysisk aktivitet i Skandinavia vil du kanskje bare beholde Norge, Sverige og Danmark – mens du fjerner resten av de europeiske landende fra analysene. Det er to kommandoer du kan bruke til dette: keep og drop. Med den første må du spesifisere hvilke land du vil beholde, mens med drop forteller du Stata hvilke land du vil fjerne. Med begge kommandoene må du spesifisere hvilke respondenter du vil beholde eller fjerne, dette gjør du med å skrive if condition ==value før verdien du vil beholde/fjerne. Condition referer her til en variabel, i dette tilfellet cntry (land). Value referer til en spesifikk verdi. For eksempel kan du skrive drop if agea<18 for å fjerne alle respondenter under 18 år. 4 Først og fremst er det viktig at du har en sikkerhetskopi av datafilen. Dette er ikke så viktig når du bruker datafil fra its learning, da du alltid har en "sikkerhetskopi" liggende der. Variabelen cntry måler hvilket land respondentene er fra i ESS. Når du har funnet bokstavkoden for landene du vil benytte kan vi skrive inn kommandoen. Vi skal nå beholde Norge (NO) og Polen (PL): For å beholde flere land, for eksempel Norge og Polen skriver du bare inn "|" etter landet og legger til ny kode, for eksempel: Command: keep if cntry =="No"|cntry=="PL" Enter På denne måten kan du legge til flere land etter Polen hvis du ønsker det. For å beholde kun ett land. Vi sjekker om vi har gjort det riktig med å kjøre en frekvenstabell for cntry: Statistics Summaries, tables and tests Frequency tables one-way table Vi skal nå kun beholde respondenter fra Norge: Command: keep if cntry == "NO" Enter Statistics Summaries, tables and tests Frequency tables one-way table Når vi nå kjører frekvensstatistikk for cntry vil vi få opp denne tabellen: 5 Historgram, skewness & kurtosis Grafikk er en viktig årsak til Statas popularitet. Histogrammer kan lages både i menyer og med kommandoer. Vi skal gjøre et eksempel med kommandoer. Du kan lese mer om hvordan man lager historgrammer i menyer i Midtbø (2012) og Acock (2014). Frekvensstatistikk gir en tallmessig oversikt over variablene våre. Dette kan også fremstilles grafisk ved hjelp av et histogram. Å studere en variabel fremstilt i et histogram er kanskje den enkleste måten å sjekke om en variabel er normalfordelt på. Det er viktig å sjekke normalfordelingen på variablene dere velger til oppgaven (dette gjelder kontinuerlige variabler og ordinalvariabler som skal behandles som kontinuerlige). Hvis den avhengige variabelen ikke er normalfordelt kan det bli et problem for dine statistiske analyser. Vi skal nå lage et histogram for variabelen eduyrs, som måler utdanningsnivå (antall år): Command: histogram eduyrs enter Med denne kommandoen får vi opp et nytt vindu i STATA som viser et histogram for variabelen eduyrs. 6 Vi kan også be Stata om å legge til normalfordelingskurven på histogrammet ved å legge til kommandoen normal: Command: histogram eduyrs, normal width (1) enter width forteller Stata hvor bred hver stolpe skal være i histogrammet (i dette tilfellet 1). Dette er rent estetisk. 7 Vi ser av histogrammet og normalfordelingskurven at variabelen eduyrs ikke er helt normalfordelt, men tilnærmet normalfordelt i alle fall. Å dømme hvorvidt en variabel er normalfordelt eller ikke basert på et histogram vil alltd være noe subjektivt. Et mer objektivt mål på en variabels normalfordeling er skewness (skjevhet) og kurtosis (kurtose) som måles i tallverdier. Vi kan dermed sette ett tallmessig kriteria for hva som er problematisk når det gjelder normalfordeling. Vi kan bruke både tabstat og summarize her. La oss prøve med en annen variabel – tvtot (måler hvor mye man ser på TV i hverdagen): Command: tabstat tvtot, statistics (skew kurtosis) enter 8 Command: summarize tvtot, detail enter Hovedforskjellen ved å bruke disse to kommandoene er at med tabstat kan man enklere sammenlikne verdiene til flere variabler. Verdiene for skew (skjevhet) og kurtosis (kurtose) er begge ganske gode for variabelen tvtot. På 0.02 er det minimalt med skjevhet i variabelen (0 er ingen skjevhet/skew og en skjevhet/skew over +/- 2 er generelt problematisk). En kurtose/kurtosis på over 10 gir grunn til bekymring (Midtbø, 2012; Acock, 2014). I Stata er kurtose/kurtosis sentrert på 3 som betyr at om variabelen har en kurtose på 3 er variabelen perfekt normalfordelt. En lavere kurtoseverdi betyr at spredningen i variabelen er bredere enn den burde være, mens en høy kurtoseverdi betyr at den er "tung" rundt midten (altså er verdiene i midten av variabelen mer vanlig enn de bør være i en normalfordeling). Selv om skew/skjevhet og kurtosis/kurtose har 9 gode verdier kan vi fortsatt ha problemer med uteliggere/outliers (ekstremverdier). For å undersøke dette kan vi bruke et box plot. Først skal vi gå gjennom en tredje måte å få en grafisk fremstilling av normalfordelingen på (q-q plot). Oppsummering så langt Frequencies: viser oss antall respondenter innen hver verdi på variabelen. Skewness: forteller oss noe om plasseringen av gjennomsnittet. Hvis skewness er 0 er gjennomsnittet i midten av distribusjonen, altså er variabelen normalfordelt. Kurtosis: forteller oss noe om hvor jevn fordelingen er. Hvis kurtosis er positiv vil det meste av utvalget være rundt gjennomsnittet. Hvis kurtosis er negativ vil flere respondenter ha mer perifere verdier Histogram: viser oss frekvensfordelingen grafisk. I dette tilfellet har vi en litt negativt skjev distribusjon, men for vår analyse så antar vi at den er normalfordelt. Q-Q Plot (Q-normal plot) En annen måte å undersøke normalfordelingen til en variabel er å bruke Q-Q plots. Disse sammenligner fordelingen av en variabel mot en teoretisk normalfordeling. Et q-q-plot viser tydeligere hvordan en variabel avviker fra normalfordelingen enn hva et histogram gjør. Hvis variabelen er normalfordelt skal verdiene ligge langs 45-graderslinjen i dette plottet. Linjen representerer altså normalfordelingen. Kommandoen for grafen er qnorm. Vi prøver nå med variabelen tvtot: 10 Command: qnorm tvtot enter Q-q plottet viser at tvtot er tilnærmet normalfordelt, med noen uteliggere i begge ender. Vi prøver et nytt eksempel med variabelen agea, alder: Command: qnorm agea Enter 11 Agea har en kurtoseverdi på under 3 (2.16), som vi også ser her fra S-formen på q-q plottet. Det er også et par prikker i begge ender av S-formen, disse indikerer uteliggere (ekstremverdier). Box plot Fram til nå har vi konsentrert oss om gjennomsnitt og standardavvik. Men gjennomsnittet kan bli sterkt påvirket av uteliggere. Dette gjør at vi i noen tilfeller bør undersøke medianen og kvartilene. Et boksplott kan fortelle oss om sentraltendens, spredning, symmetri og ekstremverdier (uteleiggere). Kommandoen i Stata er graph box. Vi skal nå lage et box plot for variabelen eduyrs, utdanning: Command: graph box eduyrs Enter 12 Boksen er definert av rektangelet midt i figuren. De to loddrette strekene ovenfor og nedenfor boksen kaller vi "værhårene" og avsluttes med to horisontale linjer som blir kalt "gjerder". I en symmetrisk fordeling er værhårene like lange. Dersom boksen og værhårene er presset sammen i bunnen av figuren, slik som her, er fordelingen høyreskjev. Enheter på utsiden ansees som ekstremverdier (eller uteleiggere) og er angitt med prikker. Av boksplottet for eduyrs ser i at det bare er et par verdier som ansees som ekstreme. I dette tilfellet er det sannsynligvis ikke problematisk. Dere kan lese mer om uteliggere og ekstreme verdier i Acock (2014) på side 283. Missing En av statistikkens grunnregler er at jo flere enheter som tas med i analysen, jo bedre er det. For at utvalgene vi studerer kan kunne fortelle oss noe om populasjonen vi studerer er det viktig at den enkelte variabel ikke har for mange ”missing values”, personer som har unnlatt å svare på det spesifikke spørsmålet – disse vil nemlig ikke bidra med noe til analysen. 13 Hvis man har altfor mange missing values vil dette skape en skjevhet i resultatene dine. Sjekk derfor alltid om variablene dine har mange ”missing”! For å spesifisere missing values som missing må vi kunne identifisere verdiene som er missing. For å gjøre dette i Stata er summarize og tabulate oneway gode kommandoer. Vanlige verdier for missing er høye doble og triple tall (for eksempel 99, 888, 77). Hvis det er et svaralternativ som for eksempel "don't know", "no answer" eller liknende, så er dette missing values – men vi må også kunne identifisere deres tallverdi for å kunne omkode dem. For å få verdiene på disse svaralternativene må vi bruke kommandoen nolabel sammen med tabulate oneway. Vi prøver både med og uten nolabel: Command: tabulate trstprl enter 14 Command: tabulate trstprl, nolabel enter Istedenfor at den høyeste og laveste verdien sier "no trust" og "complete trust" står det nå bare 0 og 10. Der det sto "don't know" står det nå 88 – det vil si at 88 er tallverdien for svaralternativet "don't know". I neste dataøving skal vi gå gjennom omkodinger og da er det nyttig å kunne identifisere slike svaralternativer som "don't know" og "no answer" slik at vi kan omkode variablene våre til å ekskludere disse missing values. 15 Stata kommandoer fra øving 2 Kommando Forkortelse histogram Anvendelse Histogram over en variabels normalfordeling histogram normal Histogram med normalfordelingskurve Summarize x, detail su x, d graph box Box plot qnorm q-q plot (skew kurtosis) Får opp skewness og kurtosis verdier når de anvendes med tabstat x, statistics keep if Beholde respondenter drop if Fjerne respondenter nolabel Tallverdier istendenfor labels – brukes sammen med tabulate oneway width Angi bredde på stolpene i histogrammet (estetisk) 16
© Copyright 2024