numpy数组,删除列中的重复项直到新值

所以我目前有一个看起来像这样的数组,

[[1. 2. 1. 0.]
 [3. 4. 1. 0.]
 [6. 5. 0. 1.]
 [8. 7. 0. 1.]
 [3. 5. 1. 0.]
 [2. 9. 1. 0.]]

如果第一列大于第二列,则第三列将指示为1,反之亦然。第四列则相反。我正在尝试删除第三列和第四列中仅第一列正下方的重复项。我基本上希望它看起来像这样。

[[1. 2. 1. 0.]
 [3. 4. 0. 0.]
 [6. 5. 0. 1.]
 [8. 7. 0. 0.]
 [3. 5. 1. 0.]
 [2. 9. 0. 0.]]

以下是我当前的代码,该如何更改?

import numpy as np
arr = np.array((1,2,3,4,6,5,8,7,3,5,2,9))
arr = np.reshape(arr, (-1,2))
arr = np.append(arr,np.zeros([len(arr),1]),1)
arr = np.append(arr,np.zeros([len(arr),1]),1)

arr[:, 2] = np.where(arr[:, 0] > arr[:, 1], arr[:, 2], 1)
arr[:, 3] = np.where(arr[:, 0] < arr[:, 1], arr[:, 3], 1)