Numpy基础(4)伪随机数生成和随机漫步
六、伪随机数生成
numpy.random模块填补了Python内奸的random模块的不足,可以高效地生成多种概率分布下的完整样本值数组。
seed | 向随机数生成器传递随机状态种子 |
permutation | 返回一个序列的随机排列,或者返回一个乱序的整数范围序列 |
shuffle | 随机排列一个序列 |
rand | 从均匀分布中抽取样本 |
randint | 根据给定的由低到高的范围抽取随机整数 |
randn | 从均值0方差1的正态分布中抽取样本 |
binomial | 从二项分布中抽取样本 |
normal | 从正态分布(高斯分布)中抽取样本 |
beta | 从beta分布中抽取样本 |
chisquare | 从卡方分布中抽取样本 |
gamma | 从伽马分布中抽取样本 |
uniform |
从均匀[0, 1)分布中抽取样本 |
七、随机漫步
>>> import random
>>> position = 0
>>> walk = [position]
>>> steps = 1000
>>> for i in range(steps):
step = 1 if random.randint(0, 1) else -1
position += step
walk.append(position)
>>> import matplotlib.pyplot as plt
>>> plt.plot(walk[:100])
[<matplotlib.lines.Line2D object at 0x0DADBE30>]
>>> plt.show()