Python 熊猫中的数据帧排序

Python 熊猫中的数据帧排序,python,pandas,sorting,Python,Pandas,Sorting,考虑以下数据集: seq_id a b id 1 20 13 1 2 21 14 1 3 18 19 1 1 22 15 2 2 21 14 2 1 25 12 1 2 27 13 1 我需要按id对数据集进行排序,但是对于特定id,我有多个组。例如,有两组id 1。 我需要以下结果: seq_id a b id 1 20 13 1 2 21 14 1 3

考虑以下数据集:

seq_id  a  b  id 

1       20 13 1
2       21 14 1
3       18 19 1
1       22 15 2
2       21 14 2
1       25 12 1
2       27 13 1
我需要按id对数据集进行排序,但是对于特定id,我有多个组。例如,有两组id 1。 我需要以下结果:

seq_id  a  b  id 

1       20 13  1
2       21 14  1
3       18 19  1
1       25 12  1
2       27 13  1
1       22 15  2
2       21 14  2
我尝试了这个不正确的脚本:

sort = lambda x: sorted(x,reverse=False)
data = data.sort_values(by=['id'],ascending=True)
data.groupby('id').seq_id.apply(sort)
谢谢你的评论

或者是否有任何方法可以更改第二个组的名称id=1以将它们彼此分开。例如,对于第一组id=1和第二组id=1-1,请尝试:

data = data.sort_values(by=['id'], ascending=True, kind='mergesort')
添加
kind='mergesort'
将切换
sort_值
调用以使用“稳定”排序算法(请参阅),这意味着对于排序标准具有相等值的行,将保留原始行顺序