Sånt där ska vi inte hålla på med nu, skolan har ju i princip sommarlov! ;)
Tilläggas bör att jag inte kommer ihåg hur man räknar ut standardavvikelsen, om man nu kan göra det..?
6 svar · 468 visningar · startad av Mc Fetto
Sånt där ska vi inte hålla på med nu, skolan har ju i princip sommarlov! ;)
Tilläggas bör att jag inte kommer ihåg hur man räknar ut standardavvikelsen, om man nu kan göra det..?
Standardavvikelse är ett mått på hur mycket ett medelvärde varierar. Antag att vi har följande fördelning på blocklängderna:
#instruktioner frekvens
0: ------------- 0
1: ------------- 0
2: ------------- 1
3: ------------- 3
4: ------------- 2
5: ------------- 1
6: ------------- 0
dvs 1 gång var det 2 instruktioner från ett hopp till ett annat.
medelvärdet blir: (2 + 3*3 + 2*4 + 5)/7 = 3.4285 (kallar det m nedan)
variansen blir: (1/7)*(2-m)^2 + (3/7)*(3-m)^2 + (2/7)*(4-m)^2 + (1/7)*(5-m)^2
dvs "hur stor del var av längd X" * "(längd X - medelvärde) i kvadrat"
Standardavvikelsen är roten ur variansen, dvs
stdav = sqrt( (1*(2-m)^2 + 3*(3-m)^2 + 2*(4-m)^2 + 1*(5-m)^2) / 7)
Så för att kunna beräkna stdav. måste ni veta hur ofta en viss blocklängd förekommer (dvs en array), där ni kan anta att ingen blocklängd överskrider 1024 eller något annat stort tal.
http://research.med.umkc.edu/tlwbiostats/variability.html
Eller så pillar man in siffrorna i miniräknaren och låter den göra jobbat åt en ;)
multiplicera ihop talet med sannolikheten att det väljs (i ditt exempel 1/10) och summera ihop alla talen
1*1/10 + 2*1/10 + 3*1/10 + 4*1/10 + 5*1/10 + 6*1/10 + 7*1/10 + 8*1/10 + 9*1/10 + 10*1/10 = 5.5
/r
hmm, oj, det var inte väntevärdet du ville ha :)
Tack för svaren!
Jag får standardavvikelsen till roten ur 8.25 ~= 2.87