Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def random(self, point=None, size=None, repeat=None):
alpha, m = draw_values([self.alpha, self.m],
point=point)
return generate_samples(self._random, alpha, m,
dist_shape=self.shape,
size=size)
Parameters
----------
point : dict, optional
Dict of variable values on which random values are to be
conditioned (uses default point if not specified).
size : int, optional
Desired size of random sample (returns one sample if not
specified).
Returns
-------
array
"""
mu, alpha, psi = draw_values(
[self.mu, self.alpha, self.psi], point=point, size=size)
g = generate_samples(
self._random,
mu=mu,
alpha=alpha,
dist_shape=self.shape,
size=size
)
g[g == 0] = np.finfo(float).eps # Just in case
g, psi = broadcast_distribution_samples([g, psi], size=size)
return stats.poisson.rvs(g) * (np.random.random(g.shape) < psi)
Parameters
----------
point : dict, optional
Dict of variable values on which random values are to be
conditioned (uses default point if not specified).
size : int, optional
Desired size of random sample (returns one sample if not
specified).
Returns
-------
array
"""
n, p, psi = draw_values([self.n, self.p, self.psi], point=point, size=size)
g = generate_samples(stats.binom.rvs, n, p,
dist_shape=self.shape,
size=size)
g, psi = broadcast_distribution_samples([g, psi], size=size)
return g * (np.random.random(g.shape) < psi)
def random(self, point=None, size=None, repeat=None):
n, p = draw_values([self.n, self.p], point=point)
return generate_samples(st.binom.rvs, n=n, p=p,
dist_shape=self.shape,
size=size)
----------
point : dict, optional
Dict of variable values on which random values are to be
conditioned (uses default point if not specified).
size : int, optional
Desired size of random sample (returns one sample if not
specified).
Returns
-------
array
"""
lower, upper = draw_values([self.lower, self.upper],
point=point, size=size)
return generate_samples(stats.uniform.rvs, loc=lower,
scale=upper - lower,
dist_shape=self.shape,
size=size)
----------
point : dict, optional
Dict of variable values on which random values are to be
conditioned (uses default point if not specified).
size : int, optional
Desired size of random sample (returns one sample if not
specified).
Returns
-------
array
"""
alpha, m = draw_values([self.alpha, self.m],
point=point, size=size)
alpha, m = broadcast_distribution_samples([alpha, m], size=size)
return generate_samples(self._random, alpha, m,
dist_shape=self.shape,
size=size)
def random(self, point=None, size=None, repeat=None):
nu, mu, lam = draw_values([self.nu, self.mu, self.lam],
point=point)
return generate_samples(stats.t.rvs, nu, loc=mu, scale=lam**-0.5,
dist_shape=self.shape,
size=size)
Parameters
----------
point : dict, optional
Dict of variable values on which random values are to be
conditioned (uses default point if not specified).
size : int, optional
Desired size of random sample (returns one sample if not
specified).
Returns
-------
array
"""
beta = draw_values([self.beta], point=point, size=size)[0]
return generate_samples(self._random, beta,
dist_shape=self.shape,
size=size)
def random(self, point=None, size=None, repeat=None):
mu, lam, alpha = draw_values([self.mu, self.lam, self.alpha],
point=point)
return generate_samples(self._random,
mu, lam, alpha,
dist_shape=self.shape,
size=size)
Parameters
----------
point : dict, optional
Dict of variable values on which random values are to be
conditioned (uses default point if not specified).
size : int, optional
Desired size of random sample (returns one sample if not
specified).
Returns
-------
array
"""
a = draw_values([self.a], point=point, size=size)[0]
samples = generate_samples(self._random,
a=a,
dist_shape=self.shape,
size=size)
return samples