どのように配列の要素の間隔をpython/numpyで合計できますか?例えば配列の要素の間隔をpython/numpyで合計するにはどうすればよいですか?
は、MATLABではこのようなものも可能である:
y= ones(10,20);
y(1:5,:) = 2;
for k = 1: 10
psum(k) = sum(y((1:3),k));
end
しかし、numpyのからsum関数は、 "1:3" 対応無しはありません
感謝を!
どのように配列の要素の間隔をpython/numpyで合計できますか?例えば配列の要素の間隔をpython/numpyで合計するにはどうすればよいですか?
は、MATLABではこのようなものも可能である:
y= ones(10,20);
y(1:5,:) = 2;
for k = 1: 10
psum(k) = sum(y((1:3),k));
end
しかし、numpyのからsum関数は、 "1:3" 対応無しはありません
感謝を!
おそらくこのような何か:
y = numpy.ones((10, 20))
y[0:5] = 2
psum = y[0:3].sum(axis=0)
シンプルな例:
y = numpy.array([2, 6, 7, 3, 4])
print y[1:4].sum()
プリント16
、真ん中の3つの要素の合計。
これはトリックを行う必要があります。
>>> y = np.ones((10, 20))
>>> y[0:5, :] = 2
>>> psum = y[0:3, 0:10].sum(axis=0)
注意をPythonで、インデックスがあることをゼロベースおよびエンドインデックスは非含まれています。
正確ではありません。 Matlabプログラムは少なくとも6つすべてを返します(少なくともOctaveで)。 –
@larsmans:MatlabとNumPyのインデックスの順序については、何かが異なります。私は、配列スライスをどのように合計するかを明確にする簡単な例を追加しました。 –
@Bago:私はそれを理解しましたが、MatlabとNumPyの違いとは無関係に、別のやり方でそれを混乱させました。本質的に今修正されるべきである。 –