私はこのようなマトリックスを持っています
[[1,2,4,6],
[4,7,9,9],
[1,9,10,20]]
Pythonで列ごとに部分合計を取得するにはどうすればよいですか?
[[1,2,4,6],
[(4-1),(7-2),(9-4),(9-6)],
[(1-4),(9-7),(10-9),(20-9)]]
試す
np.vstack((Z[0],np.diff(Z,axis=0)))
Z
微分している行列はどこにありますか。
i
2 行目からは、必要なのは rowと rowの違いでi-1
あり、1 行目は元の配列の 1 行目です。これを取得する最も簡単な方法は、numpyを使用することです。したがって、これは機能します:
In [1]: import numpy as np
In [2]: a = np.array( [[1,2,4,6],
...: [4,7,9,9],
...: [1,9,10,20]]
...: )
In [3]: np.vstack( (a[0], a[1:]-a[:-1]) )
Out[3]:
array([[ 1, 2, 4, 6],
[ 3, 5, 5, 3],
[-3, 2, 1, 11]])
ヘンリー・ウォットン卿 (!) が指摘するように、違いa[1:]-a[:-1]
は と同じnp.diff(a, axis=0)
です。