News for hackers. Stuff that matters.
Re:Show HN: Learn When to Quit by atum47 on Saturday December 07, 2019 @04:16PM (#21732609)
>"The implementation first chooses the length of the number, then fills in the digits. This makes it biased towards smaller numbers."

Why?

Re:Show HN: Learn When to Quit by fourthark on Saturday December 07, 2019 @04:29PM (#21732678)
Consider a two digit number. With this algorithm, half of the numbers generated will be less than 10, and half will be 11-99.

Likewise with the full 100 digits this algorithm has a 1% chance of generating a number less than 10, while the correct proportion would be 1e-100.

The algorithm also does not generate numbers with zero in them (presumably to avoid leading zeroes, but this will skew results somewhat).

I think the correct algorithm would be to generate 100 digits and then remove the leading zeroes.

Re:Show HN: Learn When to Quit by bentona on Saturday December 07, 2019 @04:27PM (#21732669)
Re:Show HN: Learn When to Quit by jbay808 on Sunday December 08, 2019 @12:24AM (#21734471)
Also relevant (and in my mind, the underlying explanation for Benford's Law):

https://en.m.wikipedia.org/wiki/Jeffreys_prior

Re:Show HN: Learn When to Quit by bentona on Sunday December 08, 2019 @10:15AM (#21736259)
Just getting into bayesian inference and this sent me down a rabbit hole, thanks :)
Re:Show HN: Learn When to Quit by atum47 on Saturday December 07, 2019 @04:30PM (#21732693)
Damn...
Re:Show HN: Learn When to Quit by atum47 on Saturday December 07, 2019 @04:42PM (#21732763)
People, I just ran this simple script on my terminal using Node and I got a pretty uniform result.

  a = {}
  for(let i = 0; i < 100000; i++){
    let n = Math.floor(Math.random() * 10);
    if( n in a )
      a[n] += 1
    else
      a[n] = 1
  }


My result:

{ '0': 9917, '1': 10015, '2': 9957, '3': 10107, '4': 10019, '5': 10037, '6': 10120, '7': 9914, '8': 10042, '9': 9872 }

Re:Show HN: Learn When to Quit by peteretep on Saturday December 07, 2019 @07:23PM (#21733603)
> real-life sets of numerical data

Today you learned: Node’s random number generator isn’t selecting from a real-life set of numerical data

Re:Show HN: Learn When to Quit by atum47 on Saturday December 07, 2019 @08:18PM (#21733798)
yeah, I just mixed two informations. I thought the other person said my algorithm would be biased towards small numbers cause I use the JS random function to pick the number of decimal places for the number
Re:Show HN: Learn When to Quit by bentona on Saturday December 07, 2019 @11:51PM (#21734408)
Yep, sorry, didn't mean to say this directly applied, just a neat concept that's somewhat related.
Re:Show HN: Learn When to Quit by fourthark on Saturday December 07, 2019 @06:37PM (#21733388)
Sure but that’s not the algorithm you used in the repo.