私はナイーブなnumpyユーザーです。次の問題について、あなたの助けが必要です。2番目の配列よりも小さい多次元配列のいくつかの要素を3番目の配列に置き換えたい。例えば:
x = np.arange(16).reshape((2, 8))
# x = np.array([[ 0, 1, 2, 3, 4, 5, 6, 7],
# [ 8, 9, 10, 11, 12, 13, 14, 15]])
と
y = np.array([[2], [13]])
# y = np.array([[ 2], [13]])
x
ここで、がより大きい場所を見つけ、配列にy
少なくとも1つある場合は、これらのインスタンスをカウントし、別の配列()を作成して、これらの要素を次のように置き換えます。True
x > y
z
x
z
x > y
# = [[False, False, False, True, True, True, True, True],
# [False, False, False, False, False, False, True, True]]
この場合、x
(x[:,3:]
)の5つの要素を置き換える必要があるため、(5, 2)
配列を作成します。
z = np.array([[20,21],[22,23],[24,25],[26,27],[28,29]])
私が欲しい結果は
x == np.array([[ 0, 1, 2, 20, 22, 24, 26, 28],
[ 8, 9, 10, 21, 23, 25, 27, 29]])