On 10/23/11 9:51 PM, Ahmed Abdeen Hamed wrote: > Hi Phil, > > Thank you for your response. The answer you provided gave me only half of > what I need. The other half is how to get this boolean value with a given > probability much the same as nextBonimial?
Sorry, I misread your code. To do that, I would just use gen.nextDouble() with a test against Simulation.M_RATE as the commented out code does. Phil > > Thanks very much! > Ahmed > > On Mon, Oct 24, 2011 at 12:19 AM, Phil Steitz <[email protected]> wrote: > >> On 10/22/11 8:40 PM, Ahmed Abdeen Hamed wrote: >>> Hi Phil, >>> >>> Thanks very much for your quick response. I am doing some simulations >> that >>> produce probailities which are in turn must be compared to certains >> rates. >>> Here is an example of what I am doing: >>> >>> if (randBinomial.nextBinomial(1, Simulation.MRATE)==1) { >>> >>> // the condition can be replaced by the following uncommented condition >>> >>> //randM.nextDouble() < Simulation.M_RATE; >>> >>> if (gt[i] == 0) { >>> >>> gt[i] = 1; >>> >>> } else { >>> >>> gt[i] = 0; >>> >>> } >>> >>> } >>> >>> Please let me know if I am using Binomial object and its method >> correctly. >> >> As Ted pointed out, you should not be generating values from the >> Binomial distribution here. That distribution is for the number of >> successes in a given number of Bernoulli trials. The degenerate >> case, where the number of trials is 1, can be much more efficiently >> handled just generating a random boolean, which can be generated by >> a RandomGenerator directly. As Luc pointed out, there are better >> PRNGs in [math] than the JDK-supplied generator. To use, for >> example, a Well generator, just do >> >> RandomGenerator gen = new Well19937c(); >> >> and then >> >> gen.nextBoolean(); >> >> to generate (pseudo-)random boolean values. >> >> Phil >> --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
