numpy.array形状(R、1)と(R、)の違い
ではnumpy、一部の操作は正常に(R, 1)戻り(R,)ますが、一部は戻ります。これは明示的でreshapeある必要があるため、行列の乗算をより退屈なものにします。たとえば、行列が与えられた場合M、行数をnumpy.dot(M[:,0], numpy.ones((1, R)))どこにしたいのかR(もちろん、同じ問題が列ごとにも発生します)。当社は、取得しますmatrices are not alignedので、エラーをM[:,0]形状である(R,)が、numpy.ones((1, R))形状です(1, R)。 だから私の質問は: 形状(R, 1)との違いは何ですか(R,)。文字通り、数字のリストとリストのリストで、すべてのリストに数字だけが含まれていることがわかります。行列の乗算を簡単にするのではなく、numpy形状(R, 1)を優先するように設計しないのはなぜでしょうか(R,)。 上記の例にもっと良い方法はありますか?このように明示的に再形成しない場合:numpy.dot(M[:,0].reshape(R, 1), numpy.ones((1, R)))