2012/10/28 Andreas Mueller <[email protected]>: > Sorry, thought unitc was the C-inferface. > It is 4294967295, which is 2 ** 32 - 1, and doesn't fit in an int. > If the random seed is a signed int (which it seems to be), it is weird > that it works on 64bit, isn't it?
I already pushed a fix. uintc is indeed the C type "unsigned int" -- the problem is that np.random.randint expects a long (even though this is not documented anywhere). On a 64-bit box, long is 64 bits while int is 32 bits, so passing UINT_MAX + 1 works fine and returns any of the valid unsigned int values with uniform probability. On a 32-bit box, both are 32 bits wide, so UINT_MAX doesn't fit in a signed long and you have to give up on half of the range. -- Lars Buitinck Scientific programmer, ILPS University of Amsterdam ------------------------------------------------------------------------------ WINDOWS 8 is here. Millions of people. Your app in 30 days. Visit The Windows 8 Center at Sourceforge for all your go to resources. http://windows8center.sourceforge.net/ join-generation-app-and-make-money-coding-fast/ _______________________________________________ Scikit-learn-general mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
