Chris@87
|
1 """
|
Chris@87
|
2 ========================
|
Chris@87
|
3 Random Number Generation
|
Chris@87
|
4 ========================
|
Chris@87
|
5
|
Chris@87
|
6 ==================== =========================================================
|
Chris@87
|
7 Utility functions
|
Chris@87
|
8 ==============================================================================
|
Chris@87
|
9 random Uniformly distributed values of a given shape.
|
Chris@87
|
10 bytes Uniformly distributed random bytes.
|
Chris@87
|
11 random_integers Uniformly distributed integers in a given range.
|
Chris@87
|
12 random_sample Uniformly distributed floats in a given range.
|
Chris@87
|
13 random Alias for random_sample
|
Chris@87
|
14 ranf Alias for random_sample
|
Chris@87
|
15 sample Alias for random_sample
|
Chris@87
|
16 choice Generate a weighted random sample from a given array-like
|
Chris@87
|
17 permutation Randomly permute a sequence / generate a random sequence.
|
Chris@87
|
18 shuffle Randomly permute a sequence in place.
|
Chris@87
|
19 seed Seed the random number generator.
|
Chris@87
|
20 ==================== =========================================================
|
Chris@87
|
21
|
Chris@87
|
22 ==================== =========================================================
|
Chris@87
|
23 Compatibility functions
|
Chris@87
|
24 ==============================================================================
|
Chris@87
|
25 rand Uniformly distributed values.
|
Chris@87
|
26 randn Normally distributed values.
|
Chris@87
|
27 ranf Uniformly distributed floating point numbers.
|
Chris@87
|
28 randint Uniformly distributed integers in a given range.
|
Chris@87
|
29 ==================== =========================================================
|
Chris@87
|
30
|
Chris@87
|
31 ==================== =========================================================
|
Chris@87
|
32 Univariate distributions
|
Chris@87
|
33 ==============================================================================
|
Chris@87
|
34 beta Beta distribution over ``[0, 1]``.
|
Chris@87
|
35 binomial Binomial distribution.
|
Chris@87
|
36 chisquare :math:`\\chi^2` distribution.
|
Chris@87
|
37 exponential Exponential distribution.
|
Chris@87
|
38 f F (Fisher-Snedecor) distribution.
|
Chris@87
|
39 gamma Gamma distribution.
|
Chris@87
|
40 geometric Geometric distribution.
|
Chris@87
|
41 gumbel Gumbel distribution.
|
Chris@87
|
42 hypergeometric Hypergeometric distribution.
|
Chris@87
|
43 laplace Laplace distribution.
|
Chris@87
|
44 logistic Logistic distribution.
|
Chris@87
|
45 lognormal Log-normal distribution.
|
Chris@87
|
46 logseries Logarithmic series distribution.
|
Chris@87
|
47 negative_binomial Negative binomial distribution.
|
Chris@87
|
48 noncentral_chisquare Non-central chi-square distribution.
|
Chris@87
|
49 noncentral_f Non-central F distribution.
|
Chris@87
|
50 normal Normal / Gaussian distribution.
|
Chris@87
|
51 pareto Pareto distribution.
|
Chris@87
|
52 poisson Poisson distribution.
|
Chris@87
|
53 power Power distribution.
|
Chris@87
|
54 rayleigh Rayleigh distribution.
|
Chris@87
|
55 triangular Triangular distribution.
|
Chris@87
|
56 uniform Uniform distribution.
|
Chris@87
|
57 vonmises Von Mises circular distribution.
|
Chris@87
|
58 wald Wald (inverse Gaussian) distribution.
|
Chris@87
|
59 weibull Weibull distribution.
|
Chris@87
|
60 zipf Zipf's distribution over ranked data.
|
Chris@87
|
61 ==================== =========================================================
|
Chris@87
|
62
|
Chris@87
|
63 ==================== =========================================================
|
Chris@87
|
64 Multivariate distributions
|
Chris@87
|
65 ==============================================================================
|
Chris@87
|
66 dirichlet Multivariate generalization of Beta distribution.
|
Chris@87
|
67 multinomial Multivariate generalization of the binomial distribution.
|
Chris@87
|
68 multivariate_normal Multivariate generalization of the normal distribution.
|
Chris@87
|
69 ==================== =========================================================
|
Chris@87
|
70
|
Chris@87
|
71 ==================== =========================================================
|
Chris@87
|
72 Standard distributions
|
Chris@87
|
73 ==============================================================================
|
Chris@87
|
74 standard_cauchy Standard Cauchy-Lorentz distribution.
|
Chris@87
|
75 standard_exponential Standard exponential distribution.
|
Chris@87
|
76 standard_gamma Standard Gamma distribution.
|
Chris@87
|
77 standard_normal Standard normal distribution.
|
Chris@87
|
78 standard_t Standard Student's t-distribution.
|
Chris@87
|
79 ==================== =========================================================
|
Chris@87
|
80
|
Chris@87
|
81 ==================== =========================================================
|
Chris@87
|
82 Internal functions
|
Chris@87
|
83 ==============================================================================
|
Chris@87
|
84 get_state Get tuple representing internal state of generator.
|
Chris@87
|
85 set_state Set state of generator.
|
Chris@87
|
86 ==================== =========================================================
|
Chris@87
|
87
|
Chris@87
|
88 """
|
Chris@87
|
89 from __future__ import division, absolute_import, print_function
|
Chris@87
|
90
|
Chris@87
|
91 import warnings
|
Chris@87
|
92
|
Chris@87
|
93 # To get sub-modules
|
Chris@87
|
94 from .info import __doc__, __all__
|
Chris@87
|
95
|
Chris@87
|
96
|
Chris@87
|
97 with warnings.catch_warnings():
|
Chris@87
|
98 warnings.filterwarnings("ignore", message="numpy.ndarray size changed")
|
Chris@87
|
99 from .mtrand import *
|
Chris@87
|
100
|
Chris@87
|
101 # Some aliases:
|
Chris@87
|
102 ranf = random = sample = random_sample
|
Chris@87
|
103 __all__.extend(['ranf', 'random', 'sample'])
|
Chris@87
|
104
|
Chris@87
|
105 def __RandomState_ctor():
|
Chris@87
|
106 """Return a RandomState instance.
|
Chris@87
|
107
|
Chris@87
|
108 This function exists solely to assist (un)pickling.
|
Chris@87
|
109
|
Chris@87
|
110 Note that the state of the RandomState returned here is irrelevant, as this function's
|
Chris@87
|
111 entire purpose is to return a newly allocated RandomState whose state pickle can set.
|
Chris@87
|
112 Consequently the RandomState returned by this function is a freshly allocated copy
|
Chris@87
|
113 with a seed=0.
|
Chris@87
|
114
|
Chris@87
|
115 See https://github.com/numpy/numpy/issues/4763 for a detailed discussion
|
Chris@87
|
116
|
Chris@87
|
117 """
|
Chris@87
|
118 return RandomState(seed=0)
|
Chris@87
|
119
|
Chris@87
|
120 from numpy.testing import Tester
|
Chris@87
|
121 test = Tester().test
|
Chris@87
|
122 bench = Tester().bench
|