Using the NumPy library, it is possible to create a matrix of random floats:
Create a 1D matrix with n random floats
This can be done using the np.random module and its function random_sample().
import numpy as npn = 10data = np.random.random_sample(n)
This code will produce values that are evenly distributed between 0 and 1.
array([0.95511311, 0.74047589, 0.68174737, 0.7318436 , 0.70291076,0.17197878, 0.59607566, 0.42274757, 0.58774713, 0.29854085])
Create a matrix of random floats for a given shape
To create a matrix of random floats, simply specify the desired shape of the resulting array. For example:
data = np.random.random_sample((5,3))
will generate for example
array([[0.47, 0.17, 0.01],[0.59, 0.07, 0.9 ],[0.98, 0.63, 0.44],[0.59, 0.31, 0.63],[0.35, 0.48, 0.43]])
Additional features
Generate random floats between [a,b]:
a = -20b = 100data = np.random.random_sample(20) * ( b - a ) + a
gives for example
array([ 72.66937232, 3.84588178, -19.33734595, 77.85537141,64.82288126, 67.48086016, 72.5524416 , -11.11464179,23.01588743, -6.09571286, 83.57241111, 54.79577522,19.70776298, -12.37299797, 17.31787861, 19.02199864,67.5527414 , 56.50689656, 86.46552911, 36.66579102])
Generate always same random floats:
To do that a solution is to use a seed:
np.random.seed(42)data = np.random.random_sample(10)
will always return same random numbers:
array([0.37454012, 0.95071431, 0.73199394, 0.59865848, 0.15601864,0.15599452, 0.05808361, 0.86617615, 0.60111501, 0.70807258])
Round random floats
To do that a solution is to use the numpy function around():
For example
data = np.random.random_sample((5,3))
gives
array([[0.47422826, 0.16659521, 0.0104256 ],[0.59352088, 0.07216889, 0.89524555],[0.98402745, 0.6329296 , 0.43614741],[0.59215665, 0.30657867, 0.62781343],[0.34791008, 0.47968316, 0.42866502]])
Then
np.around(data,2)
gives
array([[0.47, 0.17, 0.01],[0.59, 0.07, 0.9 ],[0.98, 0.63, 0.44],[0.59, 0.31, 0.63],[0.35, 0.48, 0.43]])
References
| Links | Site |
|---|---|
| numpy.random.random | numpy.org |
| numpy.around | numpy.org |
| How to create a matrix of random numbers with numpy in python ? | moonbooks.org |
| How to round the values of a pandas DataFrame ? | moonbooks.org |
