Skip to content

Commit a93f2f4

Browse files
authored
Merge pull request #2593 from michaelosthege/patch-2
inclusiver upper bound on DiscreteUniform fixes #2592
2 parents c7c86a0 + 7180635 commit a93f2f4

File tree

2 files changed

+3
-4
lines changed

2 files changed

+3
-4
lines changed

pymc3/distributions/discrete.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -447,9 +447,8 @@ def __init__(self, lower, upper, *args, **kwargs):
447447
def _random(self, lower, upper, size=None):
448448
# This way seems to be the only to deal with lower and upper
449449
# as array-like.
450-
samples = stats.uniform.rvs(lower, upper - lower - np.finfo(float).eps,
451-
size=size)
452-
return np.floor(samples).astype('int32')
450+
samples = stats.randint.rvs(lower, upper + 1, size=size)
451+
return samples
453452

454453
def random(self, point=None, size=None, repeat=None):
455454
lower, upper = draw_values([self.lower, self.upper], point=point)

pymc3/tests/test_distributions_random.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -506,7 +506,7 @@ def test_geometric(self):
506506

507507
def test_discrete_uniform(self):
508508
def ref_rand(size, lower, upper):
509-
return st.randint.rvs(lower, upper, size=size)
509+
return st.randint.rvs(lower, upper + 1, size=size)
510510
pymc3_random_discrete(pm.DiscreteUniform, {'lower': -NatSmall, 'upper': NatSmall},
511511
ref_rand=ref_rand)
512512

0 commit comments

Comments
 (0)