温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python如何实现随机游走

发布时间:2021-03-30 09:32:04 来源:亿速云 阅读:303 作者:小新 栏目:开发技术

这篇文章主要介绍了Python如何实现随机游走,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

1、单一的500步随机游走的例子,从0开始,步长为1和-1,且以相等的概率出现。

注:需要python的内置函数random,不需安装,直接导入即可

import random

 -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import random

position=0#设置初始位置
walk=[]#保存位置
steps=500#设置步数为500步
for i in range(steps):
  step=1 if random.randint(0,1) else -1#如果随机值等于0则step为1,反之为0
  position+=step#改变位置(正,负)
  walk.append(position)
fig=plt.figure()#生成窗口
ax=fig.add_subplot(211)#返回一个axes对象,里面的参数abc表示在一个figure窗口中,有a行b列个小窗口,然后本次plot在第c个窗口中
ax.plot(walk)

ax=fig.add_subplot(223)
ax.plot(walk)

ax=fig.add_subplot(224)
ax.plot(walk)
plt.show()
#print walk#打印每一次的累积步数

运行如下:

Python如何实现随机游走

2、实现多个随机游走

需要用到numpy库

#-*- coding: utf-8 -*-

import matplotlib.pyplot as plt
import numpy as np

nwalks = 8
nsteps = 500
draws = np.random.randint(0, 2, size=(nwalks, nsteps)) # 0 or 1
steps = np.where(draws > 0, 1, -1)#每一次的步长
walks = steps.cumsum(1)#累积步数

fig = plt.figure()
ax = fig.add_subplot(111)
for i in range(nwalks):
  ax.plot(walks[i])

plt.show()

Python如何实现随机游走

感谢你能够认真阅读完这篇文章,希望小编分享的“Python如何实现随机游走”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI