Author mark.dickinson
Recipients mark.dickinson, rhettinger
Date 2010-06-18.13:47:11
SpamBayes Score 0.0102465
Marked as misclassified No
Message-id <1276868834.9.0.0441513946777.issue9025@psf.upfronthosting.co.za>
In-reply-to
Content
The nonuniformity of randrange has a knock-on effect in other random module functions.  For example, take a sample of 100 elements from range(6004799503160661), and take the smallest element from that sample.  Then the exact distribution of that smallest element is somewhat complicated, but you'd expect it to be even with probability very close to 50%.  But it turns out that it's roughly twice as likely to be even as to be odd.

>>> from random import sample
>>> from collections import Counter
>>> population = range(6004799503160661)
>>> Counter(min(sample(population, 100)) % 2 for _ in range(100000))
Counter({0: 66810, 1: 33190})
History
Date User Action Args
2010-06-18 13:47:15mark.dickinsonsetrecipients: + mark.dickinson, rhettinger
2010-06-18 13:47:14mark.dickinsonsetmessageid: <1276868834.9.0.0441513946777.issue9025@psf.upfronthosting.co.za>
2010-06-18 13:47:12mark.dickinsonlinkissue9025 messages
2010-06-18 13:47:11mark.dickinsoncreate