2013-06-05 28 views
8

私はscipy pearsonr(x、y)メソッドを使用していますが、なぜこのエラーが発生しているのかわかりません。最初の2つを計算して(私はループ内で数千回のテストを実行しています)、その後に終了します。誰が問題が何であるかについてのアイデアはありますか?このエラーは何を意味しますか?ValueError:形状の不一致:オブジェクトを単一の図形にブロードキャストできませんか?

r_num = n*(np.add.reduce(xm*ym)) 

これはエラーが発生したpearsonrメソッドの行です。何か助けていただければ幸いです!

答えて

11

この特定のエラーは、ライン上の算術で使用されている変数の1つが、同じライン上の別のものと互換性のない形状(すなわち、異なるスカラーでないスカラーである)を有することを意味する。 nとnp.add.reduce()の出力は両方ともスカラーなので、これはxmとymに問題があることを意味します。その2つはxとyの入力からそれぞれの手段を差し引いたものです。

これに基づいて、私の推測では、あなたのxとyの入力は、要素ごとの乗算のために両立しないように、互いに異なる形をしていると思います。

**技術的には、同じ行の変数には互換性のない図形が含まれているわけではありません。唯一の問題は、変数が一時的(例えば、関数出力)であろうとなかろうと、2つの変数が追加されたり、乗算されたりして、互換性のない形状を有する場合である。同じ行に異なる形の2つの変数は、数式が評価される前に問題を修正する限り、問題ありません。

関連する問題