Ngẫu nhiên là một mô-đun có trong thư viện NumPy. Mô-đun này chứa các hàm được sử dụng để tạo số ngẫu nhiên. Mô-đun này chứa một số phương pháp tạo dữ liệu ngẫu nhiên đơn giản, một số hàm hoán vị và phân phối cũng như các hàm tạo ngẫu nhiên. Các bài viết liên quan: Tất cả các chức năng trong một mô-đun ngẫu nhiên như sau: Dữ liệu ngẫu nhiên đơn giản có các chức năng sau: Chức năng này của mô-đun ngẫu nhiên được sử dụng để tạo ra các số hoặc giá trị ngẫu nhiên trong một hình dạng nhất định. Thí dụ:Random data
import numpy as np
a=np.random.rand[5,2]
a
Output:
- np.random.randn [d0, d1, …, dn]
Hàm này của mô-đun ngẫu nhiên trả về một mẫu từ phân phối “chuẩn thông thường”.
Thí dụ:
import numpy as np a=np.random.randn[2,2] a
Output:
- np.random.randint [low [, high, size, dtype]]
Chức năng này của mô-đun ngẫu nhiên được sử dụng để tạo ra các số nguyên ngẫu nhiên từ bao gồm [thấp] đến loại trừ [cao].
Thí dụ:
import numpy as np a=np.random.randint[3, size=10] a
Output:
- np.random.random_integers [low[, high, size]]
Hàm này của mô-đun ngẫu nhiên được sử dụng để tạo số nguyên ngẫu nhiên kiểu np.int giữa thấp và cao.
Thí dụ:
import numpy as np a=np.random.random_integers[3] a b=type[np.random.random_integers[3]] b c=np.random.random_integers[5, size=[3,2]] c
Output:
- np.random.random_sample [[size]]
Chức năng này của mô-đun ngẫu nhiên được sử dụng để tạo số lượng phao ngẫu nhiên trong khoảng thời gian nửa mở [0.0, 1.0].
Thí dụ:
import numpy as np a=np.random.random_sample[] a b=type[np.random.random_sample[]] b c=np.random.random_sample[[5,]] c
Output:
- np.random.random [[size]]
Chức năng này của mô-đun ngẫu nhiên được sử dụng để tạo số lượng phao ngẫu nhiên trong khoảng thời gian nửa mở [0.0, 1.0].
Thí dụ:
import numpy as np a=np.random.random[] a b=type[np.random.random[]] b c=np.random.random[[5,]] c
Output:
- np.random.ranf [[size]]
Chức năng này của mô-đun ngẫu nhiên được sử dụng để tạo số lượng phao ngẫu nhiên trong khoảng thời gian nửa mở [0.0, 1.0].
Thí dụ:
import numpy as np a=np.random.ranf[] a b=type[np.random.ranf[]] b c=np.random.ranf[[5,]] c
Output:
- np.random.sample [[size]]
Chức năng này của mô-đun ngẫu nhiên được sử dụng để tạo số lượng phao ngẫu nhiên trong khoảng thời gian nửa mở [0.0, 1.0].
Các bài viết khác:
Thí dụ:
import numpy as np a=np.random.sample[] a b=type[np.random.sample[]] b c=np.random.sample[[5,]] c
Output:
- np.random.choice [a [, size, Replace, p]]
Chức năng này của mô-đun ngẫu nhiên được sử dụng để tạo mẫu ngẫu nhiên từ một mảng 1-D nhất định.
Thí dụ:
import numpy as np a=np.random.choice[5,3] a b=np.random.choice[5,3, p=[0.2, 0.1, 0.4, 0.2, 0.1]] b
Output:
- np.random.bytes [length]
Chức năng này của mô-đun ngẫu nhiên được sử dụng để tạo ra các byte ngẫu nhiên.
Thí dụ:
import numpy as np a=np.random.bytes[7] a
Output:
Hoán vị
Có các chức năng sau của hoán vị:
- np.random.shuffle []
Hàm này được sử dụng để sửa đổi một trình tự tại chỗ bằng cách xáo trộn nội dung của nó.
Thí dụ:
import numpy as np a=np.arange[12] a np.random.shuffle[a] a
Output:
- np.random.permutation []
Hàm này hoán vị một dãy ngẫu nhiên hoặc trả về một dãy đã hoán vị.
Thí dụ:
import numpy as np a=np.random.permutation[12] a
Output:
Phân phối
Có các chức năng sau của hoán vị:
- beta [a, b [, size]]
Hàm này được sử dụng để vẽ mẫu từ bản phân phối Beta.
Thí dụ:
def setup[self]: self.dist = dist.beta self.cargs = [] self.ckwd = dict[alpha=2, beta=3] self.np_rand_fxn = numpy.random.beta self.np_args = [2, 3] self.np_kwds = dict[]
- binomial [n, p [, size]]
Hàm này được sử dụng để lấy mẫu từ một phân phối nhị thức.
Thí dụ:
import numpy as np n, p = 10, .6 s1= np.random.binomial[n, p, 10] s1
Output:
- chisquare [df [, size]]
Hàm này được sử dụng để lấy mẫu từ một phân phối nhị thức.
Thí dụ:
import numpy as np np.random.chisquare[2,4] sum[np.random.binomial[9, 0.1, 20000] == 0]/20000.
Output:
- dirichlet [alpha [, size]]
Hàm này được sử dụng để vẽ một mẫu từ phân phối Dirichlet.
Thí dụ:
Import numpy as np import matplotlib.pyplot as plt s1 = np.random.dirichlet[[10, 5, 3], 20].transpose[] plt.barh[range[20], s1[0]] plt.barh[range[20], s1[1], left=s1[0], color='g'] plt.barh[range[20], s1[2], left=s1[0]+s1[1], color='r'] plt.title["Lengths of Strings"] plt.show[]
Output:
- exponential[[scale, size]]
Hàm này được sử dụng để lấy mẫu từ phân phối hàm mũ.
Thí dụ:
def __init__[self, sourceid, targetid]: self.__type = 'Transaction' self.id = uuid4[] self.source = sourceid self.target = targetid self.date = self._datetime.date[start=2015, end=2019] self.time = self._datetime.time[] if random[] < 0.05: self.amount = self._numbers.between[100000, 1000000] self.amount = npr.exponential[10] if random[] < 0.15: self.currency = self._business.currency_iso_code[] else: self.currency = None
- f [dfnum, dfden [, size]]
Hàm này được sử dụng để lấy mẫu từ phân phối F.
Thí dụ:
import numpy as np dfno= 1. dfden = 48. s1 = np.random.f[dfno, dfden, 10] np.sort[s1]
Output:
- gamma[shape[, scale, size]]
Hàm này được sử dụng để lấy mẫu từ phân phối Gamma
Thí dụ:
import numpy as np shape, scale = 2., 2. s1 = np.random.gamma[shape, scale, 1000] import matplotlib.pyplot as plt import scipy.special as spss count, bins, ignored = plt.hist[s1, 50, density=True] a = bins**[shape-1]*[np.exp[-bins/scale] / [spss.gamma[shape]*scale**shape]] plt.plot[bins, a, linewidth=2, color='r'] plt.show[]
- geometric[p[, size]]
Hàm này được sử dụng để lấy mẫu từ một phân bố hình học.
Thí dụ:
import numpy as np a = np.random.geometric[p=0.35, size=10000] [a == 1].sum[] / 1000
Output:
- gumbel [[loc, scale, size]]
Hàm này được sử dụng để lấy mẫu từ phân phối Gumble.
Thí dụ:
import numpy as np lov, scale = 0, 0.2 s1 = np.random.gumbel[loc, scale, 1000] import matplotlib.pyplot as plt count, bins, ignored = plt.hist[s1, 30, density=True] plt.plot[bins, [1/beta]*np.exp[-[bins - loc]/beta]* np.exp[ -np.exp[ -[bins - loc] /beta] ],linewidth=2, color='r'] plt.show[]
Output:
- hypergeometric [ngood, nbad, nsample [, size]]
Hàm này được sử dụng để lấy mẫu từ phân phối Hypergeometric.
Thí dụ:
import numpy as np good, bad, samp = 100, 2, 10 s1 = np.random.hypergeometric[good, bad, samp, 1000] plt.hist[s1] plt.show[]
Output:
- laplace [[loc, scale, size]]
Hàm này được sử dụng để lấy mẫu từ phân phối Laplace hoặc phân phối hàm mũ kép với vị trí và tỷ lệ xác định.
Thí dụ:
import numpy as np location, scale = 0., 2. s = np.random.laplace[location, scale, 10] s
Output:
- logistic[[loc, scale, size]]
Chức năng này được sử dụng để lấy mẫu từ phân phối logistic.
Thí dụ:
import numpy as np import matplotlib.pyplot as plt location, scale = 10, 1 s1 = np.random.logistic[location, scale, 10000] count, bins, ignored = plt.hist[s1, bins=50] count bins ignored plt.show[]
Output:
- lognormal[[mean, sigma, size]]
Hàm này được sử dụng để lấy mẫu từ phân phối log-chuẩn.
Thí dụ:
import numpy as np mu, sigma = 2., 1. s1 = np.random.lognormal[mu, sigma, 1000] import matplotlib.pyplot as plt count, bins, ignored = plt.hist[s1, 100, density=True, align='mid'] a = np.linspace[min[bins], max[bins], 10000] pdf = [np.exp[-[np.log[a] - mu]**2 / [2 * sigma**2]]/ [a * sigma * np.sqrt[2 * np.pi]]] plt.plot[a, pdf, linewidth=2, color='r'] plt.axis['tight'] plt.show[]
Output:
14] logseries [p [, size]]
Hàm này được sử dụng để lấy mẫu từ phân phối logarit.
Thí dụ:
import numpy as np x = .6 s1 = np.random.logseries[x, 10000] count, bins, ignored = plt.hist[s1] def logseries[k, p]: return -p**k/[k*log[1-p]] plt.plot[bins, logseries[bins, x]*count.max[]/logseries[bins, a].max[], 'r'] plt.show[]
Output:
- multinomial[n, pvals[, size]]
Hàm này được sử dụng để lấy mẫu từ một phân phối đa thức.
Thí dụ:
import numpy as np np.random.multinomial[20, [1/6.]*6, size=1]
Output:
- multivariate_normal[mean, cov[, size, …]
Hàm này được sử dụng để lấy mẫu từ phân phối chuẩn đa biến.
Thí dụ:
import numpy as np mean = [1, 2] coveriance = [[1, 0], [0, 100]] import matplotlib.pyplot as plt a, b = np.random.multivariate_normal[mean, coveriance, 5000].T plt.plot[a, b, 'x'] plt.axis['equal'023 030 ] plt.show[]
Output:
- negative_binomial [n, p [, size]]
Hàm này được sử dụng để lấy mẫu từ phân phối nhị thức âm.
Thí dụ:
import numpy as np s1 = np.random.negative_binomial[1, 0.1, 100000] for i in range[1, 11]: probability = sum[s13]/1000000.
Output:
- standard_cauchy [[size]]
Hàm này được sử dụng để lấy mẫu từ phân phối Cauchy tiêu chuẩn với mode = 0.
Thí dụ:
import numpy as np import matplotlib.pyplot as plt s1 = np.random.standard_cauchy[1000000] s1 = s1[[s1>-25] & [s1