Iは2D numpyの配列を有している。、A
Iは元の行列A
の各列のbincountsから構成されている別の2DアレイB
を生成するために行列A
の各列にnp.bincount()
を適用します。ベクトル化numpyののbincount
私の問題は、np.bincount()は1dのような配列を取る関数だということです。例えばB = A.max(axis=1)
のような配列メソッドではありません。
厄介なfor-loop以外のこのB
配列を生成するために、より多くのpythonic/numpythic方法がありますか?
import numpy as np
states = 4
rows = 8
cols = 4
A = np.random.randint(0,states,(rows,cols))
B = np.zeros((states,cols))
for x in range(A.shape[1]):
B[:,x] = np.bincount(A[:,x])
注意はただの構文ですfor-loopのための砂糖、そして同じ性能特性を持っています。 –