本文用Python模拟随机漫步行为。

1 使用内建的的random模块

import randomposition = 0
walk = [position]
steps = 1000
for i in range(steps):step = 1 if random.randint(0, 1) else -1position += stepwalk.append(position)

random模块每次只能生成一个样本值,效率很低。如果要生成大量样本值,可用numpy.random模块。

可用下面的代码测试两者生成1,000,0001,000,000个样本值的速度:

import numpy as np
from random import normalvariateN = 1000000%timeit samples = [normalvariate(0, 1) for _ in range(N)]
%timeit np.random.normal(size=N)

输出:

1.17 s ± 14.6 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
34.1 ms ± 504 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)

2 使用numpy.random

import numpy as npnp.random.seed(12345)nsteps = 1000
draws = np.random.randint(0, 2, size=nsteps)
steps = np.where(draws > 0, 1, -1)
walk = steps.cumsum()

注意,random.randint(a,b)函数生成的是[

Python模拟随机漫步相关推荐

  1. 【Python】随机漫步

    欢迎来到博主 Apeiron 的博客,祝您旅程愉快 !时止则止,时行则行.动静不失其时,其道光明. 目录 1.缘起 2.创建 RandomWalk 类 3.随机选择方向 4.绘制随机漫步图 5.总结 ...

  2. python三维随机游走轨迹模拟_用Python模拟随机游走(Random walks)

    什么是随机游走? 随机游走(random walk)也称随机漫步,随机行走等,是以随机的体例采纳连续步调的过程.然后,可以将其他条件应用于此描述,以为您的特定用例建立一个随机遍历.粒子的布朗运动,股票 ...

  3. c++学习日记之使用类来模拟随机漫步

    本文主要介绍运算符重载和友元的类设计,通过定义一个矢量类来模拟随机漫步.矢量类分两种模式,直角坐标模式和极坐标模式.该函数允许用户选择行走的距离和补偿.该程序用一个变量表示位置,并报告到达指定距离住所 ...

  4. 手把手讲解python在随机漫步理论的应用

    随机漫步理论–python手把手讲解 随机漫步理论是由Karl Pearson 于1905年提出的,它是一种变化形式,在运动过程中每一步都是随机,没有明确的方向.这个在自然界.物理学.生物学.化学和经 ...

  5. shuffle什么意思?python模拟随机发牌(斗地主、掼蛋)

    shuffle什么意思? 除了翻译成"拖曳摇摆地走;搅乱;推诿,推卸",还有洗牌的意思,随机但不重复. Shuffle the cards and deal out five to ...

  6. 【Matplotlib】【Python】如何使用matplotlib绘制绘制随机生成的点--随机漫步详解

    目录 1.绘制随机漫步 2.模拟多次随机漫步 3.给点着色 4.重新绘制起点和终点 5.隐藏坐标轴 随机漫步是指每次行走都完全是随机的,没有明确的方向,结果是由一系列随机决策决定的. 为模拟随机漫步, ...

  7. 股票价格在随机漫步吗?用 Python 来告诉你

    1. 什么是随机漫步 在这个世界上存在的现象大体分为必然现象和随机现象两类.必然现象就像太阳每天必然从东边升起,西边落下那样,在相同条件下完全可以事先预测到它的结果.随机现象则不同,它在个别试验中会呈 ...

  8. 自回避随机行走问题 c语言,醉汉随机行走/随机漫步问题(Random Walk Randomized Algorithm Python)...

    世界上有些问题看似是随机的(stochastic),没有规律可循,但很可能是人类还未发现和掌握这类事件的规律,所以说它们是随机发生的. 随机漫步(Random  Walk)是一种解决随机问题的方法,它 ...

  9. 随机漫步模拟及概率分析

    <利用Python进行数据分析>一书中提到一个随机漫步.同时,在求职过程中,也遇到过要求计算落入两端的概率之比的问题.正好可以用此案例进行模拟.这里整理出来,以享网友. 基本样例: 在一个 ...

最新文章

  1. 在线拼音输入法,挺好玩的。
  2. 三部门发布18个新职业:含碳排放管理员、调饮师等
  3. PHP上传图片到数据库和存储到本地文件夹的方法
  4. linux权限-m,Linux笔记:权限管理
  5. JAVA 数组元素的反转
  6. 丹琦女神新作:对比学习,简单到只需要Dropout两下
  7. 【经典重温】所有数据无需共享同一个卷积核!谷歌提出条件参数化卷积CondConv(附Pytorch复现代码)...
  8. golang面向对象思想和实现
  9. 翻译: 4.3. 多层感知器的简明实现MLP pytorch
  10. XGBoost数据训练小例子
  11. Java工程师成神之路【转】
  12. IE下载xlsx、docx、pptx文件时自动变成zip文件问题
  13. Linux 编译 python3.7
  14. 基于MFC的人事管理系统 VC++
  15. 【精选】抽奖点名、随机抽奖PPT素材合集,年会、老师必备
  16. 路由器与交换机的作用及区别
  17. 虚拟机中ip地址总是自动变化解决办法
  18. vb.net 教程 20-3 控制Ie浏览器 3 获得Ie窗口句柄
  19. Business Requirement
  20. ofo“卖身”滴滴?共享单车开始进入下半场

热门文章

  1. 安卓安装包不能覆盖原安装包_LOL手游全网最简单注册,安装教程,安卓 IOS皆可登录!攻略群有游戏安装包!...
  2. python 报错traceback-python-traceback捕获并打印异常
  3. docker网络--理解linux底层实现机制、docker网络模式
  4. WebSocket的简单实现
  5. Spark源码分析之Executor分析
  6. oracle重新生成控制文件,Oracle重建控制文件的语法
  7. (13)ZYNQ AXI总线应用范围(学无止境)
  8. (33)VHDL实现异步复位D触发器
  9. (28)VHDL实现数码管直译
  10. (39)FPGA原语设计(IDDR)