a = np.array([[0, 1, 1.2, 3], [1, 5, 3.2, 4], [3, 4, 2.8, 4], [2, 6, 2.3, 5]])
j = np.lexsort(a.T)
k = np.unique(a[j, -1], return_index=True)[1]
print(a[j[k]])
deleting rows of a numpy array based on uniqueness of a value