python numpyの行列に、行の一部に先行するゼロがあるとします。私はすべてのゼロを行末までシフトする必要があります。 など。numpy matrix。すべての0を各行の末尾に移動してください。
0 2 3 4
0 0 1 5
2 3 1 1
は
2 3 4 0
1 5 0 0
2 3 1 1
Pythonのnumpyの中でこれを行うに任意の良い方法はありますに変換する必要がありますか?
def fix_leading_zeros(a):
mask = a!=0
flipped_mask = mask[:,::-1]
a[flipped_mask] = a[mask]
a[~flipped_mask] = 0
return a
をバックにすべてゼロの行をプッシュする - - 先行ゼロの行に定める
あなたの質問タイトルはすべてゼロを指しますが、質問自体は先行ゼロに集中しています。何があれば、非先行ゼロに何が起こるべきか? – DSM