矢量化numpy.random.multinomial

Don*_*cob 9 python numpy vectorization random-sample

我试图矢量化以下代码:

for i in xrange(s.shape[0]):
            a[i] = np.argmax(np.random.multinomial(1,s[i,:]))
Run Code Online (Sandbox Code Playgroud)

s.shape = 400 x 100 [给定].

a.shape = 400 [预期].

s是2D矩阵,包含对的概率.期望多项式从s矩阵的每一行中抽取随机样本并将结果存储在向量a中.

Ant*_*ony -2

怎么样

[np.argmax(np.random.multinomial(1,s[i,:])) for i in xrange(s.shape[0])]
Run Code Online (Sandbox Code Playgroud)