NumPy
多重ランダムウォーク
>>> nwalks = 5
>>> nsteps = 50
>>> draws = np.random.randint(0, 2, size=(nwalks, nsteps))
>>> steps = np.where(draws > 0, 1, -1)
>>> steps
array([[-1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1, -1, 1, -1, 1, -1, -1,
1, -1, 1, 1, 1, 1, 1, -1, 1, 1, 1, 1, -1, -1, 1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 1, -1, 1, 1, 1],
[-1, 1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, -1, -1, 1,
1, 1, 1, 1, 1, -1, -1, 1, 1, -1, -1, -1, 1, -1, 1, -1, 1,
-1, 1, -1, -1, 1, 1, 1, 1, -1, -1, -1, 1, 1, 1, -1, 1],
[ 1, 1, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, 1, -1, 1, 1, 1,
1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, -1, -1, -1,
1, -1, 1, -1, 1, 1, -1, -1, -1, 1, -1, 1, 1, 1, 1, 1],
[-1, -1, -1, -1, -1, 1, 1, -1, -1, -1, 1, 1, 1, -1, -1, -1, -1,
1, 1, -1, -1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, -1,
-1, 1, 1, -1, -1, 1, -1, 1, -1, 1, -1, -1, -1, 1, 1, 1],
[-1, -1, 1, 1, 1, -1, 1, -1, 1, -1, 1, -1, -1, -1, 1, -1, -1,
1, 1, -1, -1, 1, 1, -1, 1, -1, 1, 1, -1, -1, -1, 1, 1, -1,
1, -1, -1, -1, 1, 1, 1, 1, 1, 1, 1, -1, 1, 1, -1, 1]])
>>> walk = steps.cumsum(1)
>>> walk
array([[ -1, -2, -3, -2, -1, 0, 1, 0, -1, -2, -3, -4, -3,
-4, -3, -4, -5, -4, -5, -4, -3, -2, -1, 0, -1, 0,
1, 2, 3, 2, 1, 2, 1, 0, -1, -2, -3, -4, -5,
-6, -7, -8, -9, -10, -9, -8, -9, -8, -7, -6],
[ -1, 0, 1, 0, 1, 0, 1, 0, 1, 0, -1, 0, -1,
-2, -3, -4, -3, -2, -1, 0, 1, 2, 1, 0, 1, 2,
1, 0, -1, 0, -1, 0, -1, 0, -1, 0, -1, -2, -1,
0, 1, 2, 1, 0, -1, 0, 1, 2, 1, 2],
[ 1, 2, 1, 0, -1, -2, -1, 0, -1, -2, -3, -4, -3,
-4, -3, -2, -1, 0, -1, -2, -1, -2, -3, -4, -3, -4,
-5, -4, -5, -4, -5, -6, -7, -8, -7, -8, -7, -8, -7,
-6, -7, -8, -9, -8, -9, -8, -7, -6, -5, -4],
[ -1, -2, -3, -4, -5, -4, -3, -4, -5, -6, -5, -4, -3,
-4, -5, -6, -7, -6, -5, -6, -7, -8, -7, -8, -7, -8,
-9, -8, -9, -10, -9, -10, -11, -12, -13, -12, -11, -12, -13,
-12, -13, -12, -13, -12, -13, -14, -15, -14, -13, -12],
[ -1, -2, -1, 0, 1, 0, 1, 0, 1, 0, 1, 0, -1,
-2, -1, -2, -3, -2, -1, -2, -3, -2, -1, -2, -1, -2,
-1, 0, -1, -2, -3, -2, -1, -2, -1, -2, -3, -4, -3,
-2, -1, 0, 1, 2, 3, 2, 3, 4, 3, 4]])
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。