各要素の値をすべての配列要素の合計で割るだけで、配列の各要素に確率を割り当てることができます。numpy 配列の長いリストについて、python でこれを実行しようとしています。私のコード:
def calc_probs(self, array_list):
for array in array_list:
buffer=array.astype("float")
s=sum(buffer)
for e in np.nditer(buffer, op_flags=["readwrite"]):
e/=s
self.probs.append(buffer)
このコードは機能するはずです。実際、IPythonのインタラクティブモードに入力すると機能します。結果は、まさに私が望んでいるものです。しかし、コードをファイルに保存して実行すると、常に次の ValueError が発生します。
ValueError: 形状 () を持つブロードキャスト不可能な出力オペランドがブロードキャスト形状 (10) と一致しません
特にファイルから実行している場合に、このエラーが発生する理由がわかりません。誰か私に説明して、問題を解決するのを手伝ってくれませんか? どうもありがとう!