Yes, assuming that there's no other dependence on the values appearing in ?m$p and that the ? in ?m$p is actually uniform. (If there's artifacts, this process may (or may not) amplify them.)
Remember of course that there's no guarantee that there will be n values in ?m$p which are less than q. Thanks, -- Raul On Thu, Jul 16, 2020 at 2:29 PM Roger Hui <[email protected]> wrote: > > Arrgh, > > Is it valid to generate ?m$p where p>q, and keep only the numbers which are > less than q? (Not less than p.) > > > On Thu, Jul 16, 2020 at 11:27 AM Roger Hui <[email protected]> > wrote: > > > A question for the statisticians and mathematicians among us. > > > > Suppose I want to generate uniform random numbers ?n$q. Is it valid to > > generate ?m$p where p>q, and keep only the numbers which are less than p? > > Assume that m can be as large as we like. > > > > An example where p is 30 and q is 10. > > > > x=: ?1e6$30 > > y=: (x<10)#x > > n=: #y > > n > > 332824 > > c=: <: #/.~(i.10),y > > +/c > > 332824 > > > > Here, c are the count of the numbers 0,1,2,...,9 in y. > > > > The maximum absolute difference between the sample cumulative distribution > > n%~+/\c and the the theoretical cumulative distribution +/\10$0.1 is: > > > > >./ | (n%~+/\c) - +/\10$0.1 > > 0.000795616 > > > > The ⍺=0.01 critical value for the Kolmogorov test > > <https://en.wikipedia.org/wiki/Kolmogorov%E2%80%93Smirnov_test> is > > approximately > > > > 1.63 % %: n > > 0.0028254 > > > > Therefore, for this one test, y is uniformly distributed with confidence > > > 1-⍺=0.99, like ?n⍴10. > > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
