Skip to content

Commit

Permalink
answered questions
Browse files Browse the repository at this point in the history
  • Loading branch information
hannhegg committed Apr 22, 2025
1 parent 172cb27 commit fe6fd44
Showing 1 changed file with 9 additions and 3 deletions.
12 changes: 9 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ I den ene koden til statistic_data_notebook er et eksempel på hvor vi har brukt
Dette er også brukt i statistic_data_notebook for å lage en kolonne bestående av måned og dag.

##### Pandas SQL vs tradisjonell Pandas
Pandas-syntaks kan være noe kompleks og da kan man for eksempel med sqldf, bruke SQL-spørringer på Pandas DataFrames. Dette kan gi en enkel måte å filtrere, transformere og gruppere data på, på en mindre kompleks måte. SQL-spørringer kan også være enklere å lese og vedlikeholde enn Pandas-operasjoner, når man jobber med komplekse datasett. Man kan også bruke effektive og enklere SQL-kommandoer som for eksempel JOIN og GROUP BY. 
Pandas-syntaks kan være noe kompleks og da kan man for eksempel med sqldf, bruke SQL-spørringer på Pandas DataFrames. Dette kan gi en enkel måte å filtrere, transformere og gruppere data på, på en mindre kompleks måte. SQL-spørringer kan også være enklere å lese og vedlikeholde enn Pandas-operasjoner, når man jobber med komplekse datasett.

##### Uregelmessigheter i dataene
Uregelmessigheter vi kan forvente å møte på er blant annet manglende verdier. For å håndtere disse kan vi bruke metoder som for eksempel fillna(), som fyller manglende verdier med en standardverdi. Eller så kan vi bruke dropna(), som fjerner radene med manglende verdi. Vi kan også møte på ufullstendige datoer eller datoer i ukjent format. Da kan vi bruke pd.to_datetime() for å sikre at datoene blir riktig konvertert til datetime format. 
Expand All @@ -106,6 +106,7 @@ Vi kan også møte ekstremverdier, som vi kan fjerne ved å sjekke om de er "ute
For eksempel i notebook_statistic_data har vi brukt Pandas til å beregne gjennomsnittstemperaturen for å få oversikt over den typiske temperaturen i den perioden. Så har vi temp.median også som gir den midterste verdien og er viktig for når det er skjevheter i dataene. For eksempel hvis det er dager med ekstremt høy eller ekstremt lav temperatur vil medianen hjelpe oss med å gi en mer riktig representativ temperatur. Disse statistiske målene hjelper med å få innsikt i datasettet. Gjennomsnittet gir en generell indikasjon på temperaturen, medianen beskytter mot ekstreme verdier, og standardavviket forteller oss om variasjonen i dataene.

#### Kan du gi et eksempel på hvordan du vil implementere en enkel statistisk analyse for å undersøke sammenhengen mellom to variabler i datasettet?
Et eksempel på hvordan vi har implementert en enkel statistisk analyse for å undersøke sammenhengen mellom to variabler i datasettet er blant annet scatterdiagram. Vi har en linje som viser gjennomsnittstemperaturen og punkter som viser den faktiske temperaturene den dagen. Dette viser godt sammenheng og visualiserer sammenhengen mellom de to variablene på en oversiktelig måte. Scatterdiagramet gir innsikt i detaljene bak linjen til gjennomsnittet.


#### Håndtering av skjevheter
Expand All @@ -121,14 +122,16 @@ Vi har laget mange grafer som viser både temperatur, nedbør i både regn og sn
Vi har laget visualiseringer for temperatur og andre værforhold både for dagens dato, alle timene i en dag og sted brukeren selv velger, en kort periode og sted som brukeren selv velger og årlig for et sted brukeren selv velger. Det årlige dataene er basert på alle tidligere år sammenlagt. Vi valgte akkurat disse fordi det gir brukeren flere muligheter å sjekke ulike perioder og steder. Vi valgte nedbør, vind og temperatur fordi det er de værforholdene vi mener er mest interessante å vite. I notebook_current_data som viser data fra dagen idag har vi ikke tatt en graf men heller en kolonne med informasjon. Her har vi i tillegg til værdataene lagt til solnedgang og soloppgang fordi vi tenker at det kan være noe brukeren synes er relevant når spør om dagens data.


#### Hvordan kan Matplotlib og Seaborn brukes til å forbedre forståelsen av de analyserte dataene, og hvilke funksjoner i disse bibliotekene vil være mest nyttige?

#### Hvordan kan Matplotlib brukes til å forbedre forståelsen av de analyserte dataene?
Vi har blant annet brukt matplotlib.dates (as mdates) matplotlib.pyplot (as plt) for å få et mer oversiktelig diagram av de analyserte dataene. Funksjoner vi har brukt er for eksempel plt.gca for å formatere aksene sin datetime til månedlig. Denne har vært fin å bruke til oversiktelig tilpassing av aksene. Vi har også flere steder brukt plt.title, plt.grid() og plt.legend for å få mer forkalringer og oversiktelighet på diagrammene våre og for å få de til å se like ut slik at det er enkelt for brukeren å sette seg inn i grafene uansett hvilken notebook. Andre eksempler på matplotlib vi har brukt er plt.savefig for å lagre til en fil som PNG, slik man enkelt kan finne tilbake til det.


#### Hvordan vil du håndtere og visualisere manglende data i grafene dine for å sikre at de fortsatt er informative?
Da vil vi at den manglende dataen blir byttet ut med data som er hentet fra tidspunktene rundt slik den manglende dataen får en verdi som passer med de andre. Vi har også for eksempel laget søylediagram som viser manglende data for feks. snø og regn ettersom det ikke alltid snør og regner også videre laget et nytt diagram hvor de manglende dataene for snø og regn er byttet med 0.

#### Kan du beskrive prosessen for å lage interaktive visualiseringer med Widgets, Plotly eller Bokeh, og hvilke fordeler dette kan gi i forhold til statiske visualiseringer?
Man må ha et datasett klart, for eksempel et DataFrame i Python. Deretter velge en type graf, her kan man gjerne bruke plotly som støtter mange ulike visualiseringer som for eksempel linjediagram eller stolpediagram. Videre bestemmer man x og y aksen. Dersom man bruker plotly vil det gi noen automatiske funksjoner som blant annet zooming og hover-effekten.
Widgets er interaktive kontroller som dropdown-menyer, sliders og tekstfelt. Når du kombinerer disse med visualiseringene (f.eks. i Jupyter Notebooks), kan du lage dashbord hvor brukeren selv styrer hvilke data som vises, uten å måtte endre koden. Bokeh funker på samme måte som plotly men er mer rettet mot web-applikasjoner og er litt mer teknisk å sette opp enn plotly. I forhold til statistiske visualiseringer vil disse visualiseringene ha mer effekter som for eksempel zooming, dynamiske menyer (dropdowns, sliders) og enkelt å dele i web (HTML eksport).


#### Hvordan vil du evaluere effektiviteten av visualiseringene dine i å formidle de viktigste funnene fra dataanalysen til et bredere publikum?
Expand All @@ -143,12 +146,15 @@ Linjediagram ble brukt i de fleste notebooks fordi det passer godt til å vise u


#### Implementer visualiseringer ved hjelp av Matplotlib og Seaborn. Inkluder tilpassede akser, titler, og fargepaletter for å forbedre lesbarheten og estetikk.
Dette har vi brukt Matplotlib til og visualiseringene kan du finne i notebooksene.


#### Demonstrer hvordan manglende data håndteres i visualiseringene. Lag en graf som viser hvordan manglende verdier påvirker datatrender, og diskuter hvordan dette kan påvirke tolkningen av dataene.
Visualiseringen finner man i notebooksene. Vi har identifisert manglende data og fylt NaN med 0 der det er nødvendig og gitt en ny visualisering der dette er fylt inn. Manglende verdier kan påvirke datatrender og tolkning blant annet ved at dersom dataen interpoleres automatisk kan man tolke trender som ikke finnes. Eller så kan manglende verdier føre til at viktige mønstre blir skjult. Det kan også hende at dette da fører til at en analytiker har en modell eller beslutning basert på trender som ikke har virkelig data.


#### Skriv en kort evaluering av de utviklede visualiseringene. Diskuter hvilke visualiseringer som var mest effektive for å formidle informasjon, og hvorfor. Reflekter over tilbakemeldinger fra medstudenter eller veileder.
Linjegrafene viste seg å være de mest effektive når det gjaldt å formidle utvikling over tid, spesielt for å identifisere trender og mønstre i dataene. Kombinasjonen av tydelige akser, fargebruk og merking av nøkkelpunkter gjorde det enkelt å tolke informasjonen raskt. I tillegg fungerte kombinasjonsgrafene (linjediagram og stolpediagram) godt for å sammenligne flere dataserier parallelt, som f.eks. temperatur og nedbør.


#### Oppgave 7 - Refleksjonsnotat
Expand Down

0 comments on commit fe6fd44

Please sign in to comment.