flip()
一部分だけflipする場合は、異なる軸で2回flipするのをまとめてしまうと結果が変わる
code:py
import numpy as np
a = np.arange(4 * 4).reshape(4, 4)
a
code:out
array([ 0, 1, 2, 3,
4, 5, 6, 7,
8, 9, 10, 11,
12, 13, 14, 15])
code:py
a0 = a.copy()
a0:2, :2 = np.flip(a0:2, :2, axis=(0, 1)) # 左上2x2のみflip
a0
code:out
array([ 5, 4, 2, 3,
1, 0, 6, 7,
8, 9, 10, 11,
12, 13, 14, 15])
code:py
a1 = a.copy()
a1:2, : = np.flip(a1:2, :, axis=0)
a1:, :2 = np.flip(a1:, :2, axis=1)
a1
code:out
array([ 5, 4, 6, 7,
1, 0, 2, 3,
9, 8, 10, 11,
13, 12, 14, 15])