Benfords lag

Inledning

Denna utmaning går ut på att undersöka något som kallas för Benfords lag. Benfords lag beskriver hur olika siffror är fördelade som förstasiffror i statistik. Nu tror du kanske att de är fördelade jämt som när man t.ex. slumpar tal. Så är inte alltid fallet utan i många sammanhang så följer fördelningen just Benfords lag.

Benfords lag säger att det är betydligt vanligare att tal börjar med siffran 1 (30.1%) än med siffran 9 (4.6%). Läs mer om Benfords lag på wikipedia. Den matematiska bakgrunden beskrivs bättre i videon här.

bild

När gäller lagen då? Den gäller för siffror i t.ex. tidningar och när det gäller ekonomi. Faktum är att Benfords lag kan användas för att bevisa fusk inom bokföring. Utmaningen ligger i att påvisa Benfords lag i siffrorna för länders population.

Dags att söka TE4!

Ansökningen är igång!
25 april till 15 maj!
ansök via skanegy.se

Öppet hus/info-möte den 8:e maj kl. 17-18 hos NTI Lund, Sankt Lars park!

Är du intresserad av programmering, t.ex. spelutveckling, appar eller webbserverprogrammering?
Går du på Teknikprogrammet på gymnasiet och läser Programmering 1? (eller har gått och är max 22 år)

Till höst startar jag ett nytt 4:e tekniskt år tillsammans med NTI i Lund för dig som vill bli Gymnasieingenjör. Målet är att du efter 4:e året kommer ut i arbete inom mjukvaruutveckling!

/MVH
Jonas Nilsson
skapare csharpskolan.se

Skaffa data

Data kan fås via Wikipedias artikel över länders population.

Alternativ 1

Använd "scraping", dvs. att programmet laddar hem sidan, tolkar rätt siffror och bearbetar dem sedan. Ett tips är att INTE använda reguljära uttryck för att tolka HTML utan istället använda en HTML tolk t.ex. "HTML Agility Pack" som finns via NuGet i Visual Studio.

Alternativ 2

Kopiera den förberedda datan här:

Analysera resultat

Presentera fördelningen av siffror (1-9) som procent. Relektera över om fördelningen följder Benfords lag eller ej.

Här finns också läge för överkurs genom att göra en generell histogram-klass som skulle kunna återanvändas i framtiden. Objektet skulle kunna ta ett min- och maximum för intervallet som skall mätas i sin konstruktor. Den skulle även kunna implementera en lämplig IEnumerable för iterering.

Vidare utmaningar

Testa att analysera annan data. Exempel: Världens högsta byggnader (meter och/eller feet) eller förstasidan på Dagens Nyheter.

En lösning till denna utmaning finns att studera för registrerade lärare.

Kommentera

E-postadressen publiceras inte. Obligatoriska fält är märkta *

Scroll to top