注:需要python的內建函式random,不需www.cppcns.com安裝,直接匯入即可
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#列印每程式設計客棧一次的累積步數
執行如下:
需要用到numpy庫
#-*- coding: u -*-
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.pkvishwvlot(walks[i])
plt.show()
python模擬隨機遊走
在python中,可以利用陣列操作來模擬隨機遊走。下面是乙個單一的200步隨機遊走的例子,從0開始,步長為1和 1,且以相等的概率出現。純python方式實現,使用了內建的random模組 隨機遊走 第二種方式 簡單的把隨機步長累積起來並且可以可以使用乙個陣列表示式來計算。因此,我用np.rando...
python模擬隨機遊走
在python中,可以利用陣列操作來模擬隨機遊走。下面是乙個單一的200步隨機遊走的例子,從0開始,步長為1和 1,且以相等的概率出現。純python方式實現,使用了內建的random模組 隨機遊走 第二種方式 簡單的把隨機步長累積起來並且可以可以使用乙個陣列表示式來計算。因此,我用np.rando...
python區域性隨機遊走LRW
最近在做鏈路 參考了一些資料寫了乙個區域性隨機遊走,遊走步數為節點總數的100倍。初學者,程式寫的很爛,有待提高。def lrw vnow,vtar 源節點,目標節點 d d vnow 1 for step in range steps 隨機遊走步數為節點的100倍 neighbors g.neig...