在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/數(shù)據(jù)分析&挖掘  Python  Linux/ 隨機(jī)漫步問題 問什么argmax輸出結(jié)果會(huì)有很多0?不符預(yù)期。

隨機(jī)漫步問題 問什么argmax輸出結(jié)果會(huì)有很多0?不符預(yù)期。

這是一個(gè)基礎(chǔ)的隨機(jī)漫步問題。

我按照書上的內(nèi)容,嘗試找出 axis=1 上絕對(duì)值大于等于7的索引,但總是有幾行的索引為0,而正常輸入的索引是沒問題的,我不明白出現(xiàn)0的原因在哪。仔細(xì)檢查了程序的很多地方,都沒有用。

源代碼:

import numpy as np
from numpy import random

nwalks = 10
nsteps = 100
draws = np.random.randint(0, 2, (nwalks, nsteps))
steps = np.where(draws > 0, 1, -1)
walks = steps.cumsum(1)

hits7 = (np.abs(walks)>7).any(1)
print(hits7)

crossing_times = (np.abs(walks[hits7] >= 7).argmax(1))
print((walks[hits7]))
print(crossing_times)

一共10次輸出,8次為true,也就是在8行里找出絕對(duì)值大于7的索引,案例說不應(yīng)該有0存在,結(jié)果中不是0的行都沒問題,可為什么會(huì)有0呢?求大神指點(diǎn)迷津。

hit7的內(nèi)容

一共8行為true,此圖為輸出前4行

一共8行為true,此圖為輸出后4行

令人懊惱的輸出結(jié)果,不是0的都沒問題,可為什么會(huì)有0

回答
編輯回答
茍活

當(dāng)某一行所有值都不大于7時(shí),walks[hits7] >= 7在那一行返回全部是False.
對(duì)np.argmax函數(shù)來說,當(dāng)所有值都一樣大,也就都是最大值,默認(rèn)返回第一個(gè),也說是0出現(xiàn)的原因。

2017年6月13日 21:14