numpy实现随机漫步
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了numpy实现随机漫步相关的知识,希望对你有一定的参考价值。
参考技术A 随机漫步是一种数学统计模型,它由一连串轨迹所组成,其中每一次都是随机的,它能用来表示不规则的变动形式,如同一个人乱步所形成的随机记录。在这里用一种简单的模式来实现,从0开始,步进为1或者-1,两种步进的发生的概率相等。
将可视化的结果展示出来了
在用random实现的地方,walk只是对随机步进的累积,所以这里采用np.random方法一次性抽取1000次投掷硬币的结果,每次的结果为-1或者1,然后计算累积值。
最后通过argmax()方法,拿到第一次出现正向或者反向走了10步的地方。
本文只是简单的一个对numpy的练习实现而已,更多的练习需要多使用才行。
python 实现随机漫步
1.
纯python
In [247]: 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) .....: In [249]: plt.plot(walk[:100]) In [250]: plt.show()
numpy实现
nsteps=1000 draws=np.random.randint(0,2,size=nsteps) steps=np.where(draws>0,1,-1) walk=steps.cumsum() plt.plot(walk) plt.show()
np.random.randint(low, high=None, size=None, dtype=‘l‘)
参数如下: low: int 生成的数值最低要大于等于low。 (hign = None时,生成的数值要在[0, low)区间内) high: int (可选) 如果使用这个值,则生成的数值在[low, high)区间。 size: int or tuple of ints(可选) 输出随机数的尺寸,比如size = (m * n* k)则输出同规模即m * n* k个随机数。默认是None的,仅仅返回满足要求的单一随机数。 dtype: dtype(可选): 想要输出的格式。如int64、int等等 ———————————————— 版权声明:本文为CSDN博主「安ann」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/u011851421/article/details/83544853
以上是关于numpy实现随机漫步的主要内容,如果未能解决你的问题,请参考以下文章