Amatörutvecklare och entusiast

Från noll till koll

För det egna nöjets skull

Projekt

Bokarenan

Håll koll på vad du läst och vad du vill läsa härnäst. Sprunget ur min vilja att läsa mycket och bevara upplevelserna.

Bakom Femte Arenan

Möt skaparen

Anders Björkland
Anders Björkland
Kodarentusiast

Från bloggen

Centrala gränsvärdessatsen

Äntligen en ny vecka! Jag har kommit ut på andra sidan av denna helg där jag mest suttit och slipat på Bokarenan. Jag kände att jag hade den tiden över efter att ha gjort en del plugg under den gångna veckan. Mycket tid har gått åt att slipa på CSS och skapa rimliga views (sidor) för de entiteter jag vill presentera. Jag har upplevt det som enklare att ha koll på vad jag skapar och var jag har det, nu när jag skapar mina views manuellt, istället för att låta Symfony skapa dem åt mig. De views som Symfony skapade var i klass med att sitta med phpMyAdmin, men mer begränsad. Så de färdigbakade sidorna motsvarade inte de syften jag hade med dem. Och jag börjar gilla vart åt det barkar.

För närvarande ser sidan ut som nedan. Jag har avvikit lite från hur jag hade skissat den i Adobe XD och gjort den generellt lite ljusare.

Men nog om programmeringen. Denna vecka fortsätter jag med statistik. Denna gång om centrala gränsvärdessatsen.

I förra veckan beskrev jag normalfördelning och hur bra det var att ha en sådan modell. Kortfattat så innebär det att man enkelt kan uppskatta fördelning av befolkning utifrån hur långt från medelvärdet man kollar baserat på standardavvikelse. Denna vecka säger jag att man kommer få en normalfördelning om man tar tillräckligt stora samplar (urval), i princip oavsett hur den verkliga populationen ser ut. Och det är inte helt negativt! Det man vill göra med att ta stora samplar är att komma så nära det verkliga medelvärdet som möjligt med så liten standardavvikelse som möjligt. Om man lyckas med det så har man fått ett urval som har ett medelvärde som ligger där det riktiga medelvärdet ligger, med liten felmarginal.

I sitt urval kommer man ha en standardavvikelse. Och om man vill säga något om 95% av populationen så fångas de inom 2 standardavvikelser från medelvärdet. Detta har jag skrivit om i förra veckan som 68-95-99.7% regeln. Så om standardavvikelsen är stor så kommer det intervall som beskriver 95% av populationen att vara stor. Förhållandet mellan populationens standardavvikelse och urvalets standardavvikelse är s = σ/(√n), där n är urvalsstorlek. Det innebär att man minskar standardavvikelsen med roten ur sampelstorlekens förändring. Vill man halvera standardavvikelsen så får man fyrdubbla urvalsstorleken.

Nästa gång ska jag skriva något om konfidensintervall. Jag misstänker att vi redan har börjat fila på det, men jag får återkomma när jag läst lite om saken.

Standardiserad fredag

Idag ska jag låta avsluta den ”normala veckan” med standardiserade värden. Vad är ett standardiserat värde? Vad är egentligen poängen med att standardisera värden? Hur standardiserar man värden? Detta kommer jag gå igenom idag.

Ett standardiserat värde är egentligen ett mått på hur långt ifrån ett medelvärde en datapunkt är. Som mått används standardavvikelsen. Det standardiserade värdet representeras av z. Och som jag skrev om förra gången så representeras standardavvikelsen av σ [lilla sigma]. I bilden nedan så har jag ritat in σ och ett standardiserat värde med 1,25.

Vad är då poängen med standardiserade värden? Vad jag vet i skrivande stund så finns det två poänger.

För det första så kan man jämföra olika standardiserade mått med varandra. Som jag har fått förklarat för mig så har man i USA två stora antagningsprov till högre studier: ACT och SAT. De har olika skalor men kan vara angelägna att jämföra mellan. Säg att Emily har fått 650 på SAT-provet, och Michael har fått 28 på ACT. Vem av dem har större anspråk på att komma in på samma kurs om man kan anta att ACT och SAT är likvärdiga test på kunskapsnivå. Genom att standardisera värdena så får jag fram att Emilys z-värde är 1 och Michael är 1,67. Michael har alltså högre poäng om man skulle jämföra dem. Vad det innebär är att en mindre andel av alla som skriver proven har fått så höga poäng som Michael jämfört med Emily. Men det innebär inte att Emily har dåliga poäng. Faktum är att hon har bättre poäng än 84% av alla som tar samma prov. Och då kommer vi till den andra poängen.

För det andra så kan man med hjälp av standardiserade värden av en normalfördelning få fram andelar av en population.

Det är svårt att använda ögonmått för att uppskatta andel av befolkningen som har lägre poäng än Emily. Men med hjälp av z-värde och en tabell över standardiserad normal sannolikhet så kan man få fram andelen. Om man skulle kontrollera hur stor andel av befolkningen som fått poäng som varit mindre än det standardiserade värdet av 0, så kan man se att det delar befolkningen i hälften.

Det om standardiserade värden!

Jag vill också nämna något om Bokarenan. Projektet har löpt på när jag inte orkat läsa kursboken och tid funnits över. Jag har inte gillat hur svårt det varit för mig att navigera mellan relevanta Controllers och views. Jag har heller inte gillat att jag låtit skapa så många views för varje liten entitet. Det kan finnas poänger för det när man vill underhålla vilka entiteter man har. Men jag tycker att det mest har tagit upp massa plats och inte haft någon rimlig logik till sig. Jag har därför tänkt ta bort dem som inte används, och när jag upptäcker att jag behöver dem så skapar jag dem efter mina behov.

Ytterligare så har jag förfinat layouten, men det har jag skrivit lite om tidigare. Men alla dessa åtgärder har inneburit att ganska mycket kod har flyttats runt. Jag tog en liten bild av hur många förändringar det inneburit i Git:

Och till sist vill jag avsluta med lite fredagskänsla: spel! Den gångna veckan har min dotter upptäckt glädjen med att skjuta upp raketer i Kerbal Space Program, och så har också jag. Jag kommer sitta och bygga små dynamitstycken och hoppas att mina små gröna gubbar kan landa säkert någonstans. Jag har lyckats få mina explosioner att smälla i ungefär rätt riktningar, men ännu så har jag inte lyckats flyga ett varv runt planeten. Vi får se vem som först lyckas; jag eller dottern.

Trevlig helg, allihopa!

Normalfördelning

Som jag skrev om i måndags så skulle jag återkomma till en särskild form av symmetriska kurvor, nämligen normalkurvorna. Några grundläggande egenskaper med normalkurvorna är att de är symmetriska, klockformade och har bara en topp. Vi har då en enkel beskrivning av en normalfördelning. I mitten av normalkurvan är medelvärdet. Den representeras av μ. Dessutom kan man faktiskt se standardavvikelsen. Den kan man få genom att titta var normalkurvan är som brantast och ta avståndet från µ till den punkten på x-axeln. Standardavvikelsen representeras av σ. I bilden nedan så är en skiss på en normalkurva med både medelvärde och standardavvikelse markerade.

För en normalfördelning så kommer toppen alltid att vara där medelvärdet är. Förändring av medelvärdet innebär att normalkurvan flyttar med den förändringen längs x-axeln. Om standardavvikelsen förändras så kommer bredden av kurvan förändras. En lägre standardavvikelse innebär en smalare kurva. På bilden nedan har jag skissat hur det kan se ut.

Så vad är det då som är så bra med normalkurvor? För det första är det en beskrivning på en ganska vanligt förekommande fördelning ute i det vilda. För det andra så beskriver det ganska bra ett antal olika slumpmässiga utfall.

En intressant egenhet med normalkurvor är att inom 1σ från µ så finns 68% av alla observationer. Vid 2 och 3σ från µ så finns 95% respektive 99,7% av alla observationer. Vad dessa förhållanden innebär för något som kallas standardiserade värden kommer jag avsluta veckan med. Vi ses då!

Skicka en uppmuntran

Kontakta mig