When Benford´s Law doesn´t apply
I would like someone validate (or not) the formula (A)
Suppose I pick some book and open it at random. What the probability for first digit page being 1 ? Related problem: walking on street with blinded eyes, what the probability opening eyes and see first digit of random house being 1?
I didn´t find response to these questions, so I made some calculations of my own.
Many people will answer "this problem is well explained by Benford´s Law, so the probability for first digit being 1 is 30.1%"
http://en.wikipedia.org/wiki/Benford%27s_law
But I would like to say that true answer is: 19.19 %
What the reason for this difference?
Benford´s Law suit very well for numbers taken at random, that is, first digit of numbers can range from 1 to 9 (even with different probabilities). For instance, take a number and raise it to square. First digit result can be 1 to 9.
BUT book pages and street homes numbers don´t obey this distribution, because books doesn´t have exactly 99 (or 999 or 9999) pages, as well as streets are not numbered until 99 (or 999 or 9999). They are cut at some point (to say book have 265 pages).
So most books for instance have less "9" than Benford´s law predicts, because all of them begin "1" and increase monotonically by 1, lasting at some random point.
Benford´s Law distribution is as follow:
p(d) = log10(1 + 1/d)
p(1) = 30.1%
p(2) = 17.6%
p(3) = 12.5%
p(4) = 9.7%
p(5) = 7.9%
p(6) = 6.7%
p(7) = 5.8%
p(8) = 5.1%
p(9) = 4.6%
My "book distribution" is as follow
p(d) = (10.5 - d)/(49.5) ... (A)
p(1) = 19.19%
p(2) = 17.17%
p(3) = 15.15%
p(4) = 13.13%
p(5) = 11.11%
p(6) = 09.09%
p(7) = 07.07%
p(8) = 05.05%
p(9) = 03.03%
You can write a little simulation basic program to check my results and see the difference with Benford´s law
800 randomize timer
850 print :print
900 x=0 ' total digits counter
1000 for i=1 to 10000 ' for 10000 books
1010 a=int(1000 * rnd) ' set last page of book between 1 and 1000
1020 for j=1 to a ' for every book
1030 k = val(mid$(str$(j),2,1)) ' take first page digit
1040 t(k) = t(k)+1 ' acum digit
1045 x=x+1
1050 next j
1100 next i
1200 for i=1 to 9
1300 print i,using "#.####"; t(i)/x
1400 next i
This is my last run, which matches very well with (A) prediction
1 0.1916
2 0.1715
3 0.1511
4 0.1315
5 0.1117
6 0.0912
7 0.0712
8 0.0500
9 0.0301
To note the difference with Bendord´s Law, just replace line 1030 of program with
1030 k = val(mid$(str$(j*j),2,1)) ' book page number power 2
Then result will look closer to Benford´s law
1 0.2738
2 0.1811
3 0.1351
4 0.1107
5 0.0843
6 0.0714
7 0.0569
8 0.0458
9 0.0412
Wikipedia says that "Benford's law is violated by the populations of all places with population at least 2500 from five US states according to the 1960 and 1970 censuses, where only 19% began with digit 1 but 20% began with digit 2, for the simple reason that the truncation at 2500 introduces bias.[37]"
I can´t access [37] complete paper, so if someone feels my formula can help in this case, I would like to help me include entry into wiki.
Thanks Very much
Miguel Velilla