脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - Python实现随机游走的详细解释

Python实现随机游走的详细解释

2021-09-29 00:21smileLLZ Python

这篇文章主要介绍了Python实现随机游走的详细解释,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

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

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

import random

  1. -*- coding: utf-8 -*-
  2. import matplotlib.pyplot as plt
  3. import random
  4.  
  5. position=0#设置初始位置
  6. walk=[]#保存位置
  7. steps=500#设置步数为500步
  8. for i in range(steps):
  9. step=1 if random.randint(0,1) else -1#如果随机值等于0则step为1,反之为0
  10. position+=step#改变位置(正,负)
  11. walk.append(position)
  12. fig=plt.figure()#生成窗口
  13. ax=fig.add_subplot(211)#返回一个axes对象,里面的参数abc表示在一个figure窗口中,有ab列个小窗口,然后本次plot在第c个窗口中
  14. ax.plot(walk)
  15.  
  16. ax=fig.add_subplot(223)
  17. ax.plot(walk)
  18.  
  19. ax=fig.add_subplot(224)
  20. ax.plot(walk)
  21. plt.show()
  22. #print walk#打印每一次的累积步数

运行如下:

Python实现随机游走的详细解释

2、实现多个随机游走

需要用到numpy库

  1. #-*- coding: utf-8 -*-
  2.  
  3. import matplotlib.pyplot as plt
  4. import numpy as np
  5.  
  6. nwalks = 8
  7. nsteps = 500
  8. draws = np.random.randint(0, 2, size=(nwalks, nsteps)) # 0 or 1
  9. steps = np.where(draws > 0, 1, -1)#每一次的步长
  10. walks = steps.cumsum(1)#累积步数
  11.  
  12. fig = plt.figure()
  13. ax = fig.add_subplot(111)
  14. for i in range(nwalks):
  15. ax.plot(walks[i])
  16.  
  17. plt.show()

Python实现随机游走的详细解释

到此这篇关于Python实现随机游走的详细解释的文章就介绍到这了,更多相关Python 随机游走内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/weixin_43400774/article/details/91419237

延伸 · 阅读

精彩推荐