我有一个带有一组值(价格)的 pandas 数据框。每组内initiator_id
我需要对价格升序排序,如果type == sell
,并且递减,如果type == buy
。
然后我在每个组中添加一个 id。现在我这样做:
df['bidnum'] = df.groupby(['initiator_id', 'type']).cumcount()
在每个组中升序排序的有效方法是什么'initiator_id', 'type == sell'
并下降为'initiator_id', 'type == buy'
?
原始数据集现在如下所示:
initiator_id price type bidnum
1 170.81 sell 0
2 170.81 sell 0
2 169.19 buy 0
3 170.81 sell 0
3 169.19 buy 0
3 70.81 sell 1
4 170.81 sell 0
4 169.19 buy 0
4 70.81 sell 1
4 69.19 buy 1
我需要类似的东西:
initiator_id, price, type
1, 100,sell
1, 99, sell
1, 98, sell
1, 110, buy
1, 120, buy
1, 125, buy
So that sell
每个内的子组initiator_id
组按降序排序,并且buy
子组按升序排序。