np.random.uniform()
を使用してb
配列を生成した場合、問題なく再構成できます(大きい配列a
で掛けることができます)。私は、同じ行がnp.bincount()
を使用してb
を生成しようとした場合でも、私はnumpy.bincount()(ValueError)の後に再形成できません
ValueError: cannot reshape array of size 7 into shape (20,)
も両方a
とb
配列が両方のブロックに、同一の形状を有していると思っ得ます。
import numpy as np
a = np.random.uniform(0., 1., 20)
# Works
b = np.random.uniform(0., 1., 7)
b.resize(a.shape)
d = b * a
# Does not work
c = [0, 4, 5, 4, 1, 3, 4, 5, 6, 6, 5, 6, 4, 6, 3, 1, 5, 4, 6, 0]
b = np.bincount(c)
b.reshape(a.shape)
d = b * a
なぜbincount出力は入力と同じ要素数ですか? – Divakar
編集した質問をご覧ください。ランダムな世代の整数を削除しました。 – Gabriel
'c'は0から始まる7つの一意の番号を持つので、bincountは7つの要素を持っています。したがって、7エレムの配列を20エレムの形状に変形することはできません。 – Divakar