Returns the unnormalized value of the measure
Returns the unnormalized value of the measure
Gets one sample from the distribution.
Gets one sample from the distribution. Equivalent to sample()
Converts a random sampler of one type to a random sampler of another type.
Converts a random sampler of one type to a random sampler of another type. Examples: randInt(10).flatMap(x => randInt(3 * x.asInstanceOf[Int]) gives a Rand[Int] in the range [0,30] Equivalently, for(x <- randInt(10); y <- randInt(30 *x)) yield y;
the transform to apply to the sampled value.
Samples one element and qpplies the provided function to it.
Samples one element and qpplies the provided function to it. Despite the name, the function is applied once. Sample usage:
for(x <- Rand.uniform) { println(x) }
the function to be applied
Returns the log unnormalized value of the measure
Returns the log unnormalized value of the measure
Converts a random sampler of one type to a random sampler of another type.
Converts a random sampler of one type to a random sampler of another type. Examples: uniform.map(_*2) gives a Rand[Double] in the range [0,2] Equivalently, for(x <- uniform) yield 2*x;
the transform to apply to the sampled value.
Returns the probability of that draw.
Returns the probability of that draw.
Gets n samples from the distribution.
Gets n samples from the distribution.
Gets one sample from the distribution.
Gets one sample from the distribution. Equivalent to get()
An infinitely long iterator that samples repeatedly from the Rand
An infinitely long iterator that samples repeatedly from the Rand
an iterator that repeatedly samples
Returns the probability of that draw up to a constant
Returns the probability of that draw up to a constant
Represents a Multinomial distribution over elements. You can make a distribution over any breeze.linalg.QuasiTensor, which includes DenseVectors and Counters.
TODO: I should probably rename this to Discrete or something, since it only handles one draw.