我有以下数据帧df
:
Datetime Supply Price
2019-02-01 12:00 10 2.0
2019-02-01 12:00 10 1.0
2019-02-01 12:00 0 5.0
2019-02-01 12:00 10 1.0
2019-02-01 12:00 0 2.0
2019-02-01 12:00 10 4.0
2019-02-01 12:00 0 5.0
Supply
的和是40。我需要排列Suppy
10以便将它们赋给Price
的较高值,而Supply
0应该出现在Price
的较低值。你知道吗
这是预期结果:
Datetime Supply Price
2019-02-01 12:00 10 2.0
2019-02-01 12:00 0 1.0
2019-02-01 12:00 10 5.0
2019-02-01 12:00 0 1.0
2019-02-01 12:00 0 2.0
2019-02-01 12:00 10 4.0
2019-02-01 12:00 10 5.0
有什么线索吗?你知道吗
没有任何限制,除了你不能组合“供应”,排序每一个单独。我维护Datetime和Price的行绑定,如果它们不是同一个日期,这一点很明显:
如果您按
Price
对df
进行排序,然后将Supply
更改为排序后的供应值,那么它应该会执行我认为需要的操作。你知道吗如果需要,可以重新排序以恢复原始顺序。你知道吗
argsort
argsort
跟踪放置值的位置b
来存放我的置换值Supply
的排序版本填充b
df
这段代码还有优化的余地,但总体思路是有的。你知道吗
相关问题 更多 >
编程相关推荐