Some example uses of the numarray.random_array module. Note: Naturally the exact output of running these examples will be different each time!
>>> from numarray.random_array import * >>> seed() # Set seed based on current time >>> print get_seed() # Find out what seeds were used (897800491, 192000) >>> print random() 0.0528018975065 >>> print random((5,2)) [[ 0.14833829 0.99031458] [ 0.7526806 0.09601787] [ 0.1895229 0.97674777] [ 0.46134511 0.25420982] [ 0.66132009 0.24864472]] >>> print uniform(-1,1,(10,)) [ 0.72168852 -0.75374185 -0.73590945 0.50488248 -0.74462822 0.09293685 -0.65898308 0.9718067 -0.03252475 0.99611011] >>> print randint(0,100, (12,)) [28 5 96 19 1 32 69 40 56 69 53 44] >>> print permutation(10) [4 2 8 9 1 7 3 6 5 0] >>> seed(897800491, 192000) # resetting the same seeds >>> print random() # yields the same numbers 0.0528018975065
>>> from numarray.random_array import * >>> print standard_normal() -0.435568600893 >>> print standard_normal(5) [-1.36134553 0.78617644 -0.45038718 0.18508556 0.05941355] >>> print standard_normal((5,2)) [[ 1.33448863 -0.10125473] [ 0.66838062 0.24691346] [-0.95092064 0.94168913] [-0.23919107 1.89288616] [ 0.87651485 0.96400219]] >>> print normal(7., 4., (5,2)) #mean=7, std. dev.=4 [[ 2.66997623 11.65832615] [ 6.73916003 6.58162862] [ 8.47180378 4.30354905] [ 1.35531998 -2.80886841] [ 7.07408469 11.39024973]] >>> print exponential(10., 5) #mean=10 [ 18.03347754 7.11702306 9.8587961 32.49231603 28.55408891] >>> print beta(3.1, 9.1, 5) # alpha=3.1, beta=9.1 [ 0.1175056 0.17504358 0.3517828 0.06965593 0.43898219] >>> print chi_square(7, 5) # 7 degrees of freedom (dfs) [ 11.99046516 3.00741053 4.72235727 6.17056274 8.50756836] >>> print noncentral_chi_square(7, 3, 5) # 7 dfs, noncentrality 3 [ 18.28332138 4.07550335 16.0425396 9.51192093 9.80156231] >>> F(5, 7, 5) # 5 and 7 dfs array([ 0.24693671, 3.76726145, 0.66883826, 0.59169068, 1.90763224]) >>> noncentral_F(5, 7, 3., 5) # 5 and 7 dfs, noncentrality 3 array([ 1.17992553, 0.7500126 , 0.77389943, 9.26798989, 1.35719634]) >>> binomial(32, .5, 5) # 32 trials, prob of an event = .5 array([12, 20, 21, 19, 17]) >>> negative_binomial(32, .5, 5) # 32 trials: prob of an event = .5 array([21, 38, 29, 32, 36])
>>> multivariate_normal([1,2], [[1,2],[2,1]], [2,3]) array([[[ 0.14157988, 1.46232224], [-1.11820295, -0.82796288], [ 1.35251635, -0.2575901 ]], [[-0.61142141, 1.0230465 ], [-1.08280948, -0.55567217], [ 2.49873002, 3.28136372]]]) >>> x = multivariate_normal([10,100], [[1,2],[2,1]], 10000) >>> x_mean = sum(x)/10000 >>> print x_mean [ 9.98599893 100.00032416] >>> x_minus_mean = x - x_mean >>> cov = matrixmultiply(transpose(x_minus_mean), x_minus_mean) / 9999. >>> cov array([[ 2.01737122, 1.00474408], [ 1.00474408, 2.0009806 ]])
>>> multinomial(16, [.1, .4, .2]) # prior probabilities [.1, .4, .2, .3] array([2, 7, 1, 6]) >>> multinomial(16, [.1, .4, .2], [2,3]) # output shape [2,3,4] array([[[ 1, 9, 1, 5], [ 0, 10, 3, 3], [ 4, 9, 3, 0]], [[ 1, 6, 1, 8], [ 3, 4, 5, 4], [ 1, 5, 2, 8]]])
>>> beta([5.0, 50.0], [10.0, 100.]) array([ 0.54379648, 0.35352072])
>>> beta([5.0, 50.0], [[10.0, 100.], [20.0, 200.0]]) array([[ 0.30204576, 0.32154009], [ 0.10851908, 0.19207685]])
>>> beta(5.0, [10.0, 100.0], shape = (3, 2)) array([[ 0.49521708, 0.02218186], [ 0.21000148, 0.04366644], [ 0.43169656, 0.05285903]])