如果我想对这个由 声明的数组进行排序, np.zeros((50),dtype=object)并且我想按第一个值对这个数组进行排序,[list([2, 5]) list([3, 0]) list([2, 7]) list([3, 1]) list([11, 2])]喜欢[list([2, 5]) list([2, 7]) list([3, 0]) list([3, 1]) list([11, 2])]我应该用什么?我一直在尝试sort()等等sorted()..
1 回答
拉丁的传说
TA贡献1789条经验 获得超8个赞
如果数组中的所有列表都具有相同的长度,您可以使用 numpy lexsort (a是您的数组):
a = np.array(a)
a[np.lexsort((a[:,-1],a[:,-2]))]
#[[ 2 5]
# [ 2 7]
# [ 3 0]
# [ 3 1]
# [11 2]]
或等价:
a[np.lexsort(a.T[::-1,:])]
添加回答
举报
0/150
提交
取消