Source code for quantecon.util.random

"""
Utilities to Support Random State Infrastructure
"""

import numpy as np
import numbers

#-Random States-#

[docs]def check_random_state(seed): """ Check the random state of a given seed. If seed is None, return the RandomState singleton used by np.random. If seed is an int, return a new RandomState instance seeded with seed. If seed is already a RandomState instance, return it. Otherwise raise ValueError. .. Note ---- 1. This code was sourced from scikit-learn """ if seed is None or seed is np.random: return np.random.mtrand._rand if isinstance(seed, (numbers.Integral, np.integer)): return np.random.RandomState(seed) if isinstance(seed, np.random.RandomState): return seed raise ValueError('%r cannot be used to seed a numpy.random.RandomState' ' instance' % seed)