9,314 views
この記事は最終更新から 2374日 が経過しています。
numpy配列に対して部分的に平均値や標準偏差を求めたい。
以下のように 10行8列の整数配列 aを作る。
>>> import numpy as np
>>> a = (np.random.rand(10,8) * 10).astype(np.int32)
>>> a
array([[2, 7, 7, 9, 9, 4, 4, 3],
[8, 1, 4, 5, 2, 2, 0, 9],
[5, 6, 3, 4, 3, 4, 2, 5],
[0, 0, 7, 9, 3, 8, 6, 5],
[0, 0, 8, 0, 5, 8, 9, 3],
[9, 9, 3, 3, 3, 8, 9, 3],
[4, 3, 9, 7, 9, 2, 6, 2],
[2, 9, 9, 5, 0, 7, 6, 0],
[8, 2, 2, 1, 5, 1, 7, 8],
[7, 0, 4, 6, 8, 9, 0, 5]], dtype=int32)
a[2][3]を起点に 3行2列の範囲に対して統計計算したい。
見辛いので取り出してみる。切り出したものを別変数に代入した方が扱いやすいか…
>>> a[2:2+3, 3:3+2]
array([[4, 3],
[9, 3],
[0, 5]], dtype=int32)
sumで総和を求める。
>>> a[2:2+3, 3:3+2].sum()
24
meanで平均値を求める。
>>> a[2:2+3, 3:3+2].mean()
4.0
stdで標準偏差を求める。
>>> a[2:2+3, 3:3+2].std()
2.70801280154532
maxで最大値を求める。
>>> a[2:2+3, 3:3+2].max()
9
minで最小値を求める。
>>> a[2:2+3, 3:3+2].min()
0
アクセス数(直近7日): ※試験運用中、BOT除外簡易実装済2026-04-19: 0回 2026-04-18: 0回 2026-04-17: 0回 2026-04-16: 0回 2026-04-15: 0回 2026-04-14: 0回 2026-04-13: 0回