You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

按约束条件排序Pandas DataFrame:车辆重分配排序需求

车辆重分配记录的排序需求

测试用DataFrame代码

import pandas as pd
import numpy as np

df = pd.DataFrame({'car': ['Pickup', 
                           'Racer', 
                           'Lorry',
                           'Luxury',
                           'Cabrio',
                           'Bicycle', 'Truck'],
                   'old_owner': ['1', '1', '1', '2', '2', '3', '1'],
                   'new_owner': ['2', '3', '2', '1', '1', '1', '1']})


print(df)

运行输出:

car old_owner new_owner

0 Pickup 1 2
1 Racer 1 3
2 Lorry 1 2
3 Luxury 2 1
4 Cabrio 2 1
5 Bicycle 3 1
6 Truck 1 1

排序约束条件

该DataFrame记录车辆重分配情况,数字为随机账号(非连续的1、2、3序列)。排序需满足以下规则:

  • 从非1账号取走车辆前,必须先给该账号分配一辆来自1账号的车辆;
  • 任意时刻,非1账号的车辆数不得少于初始数量;
  • 1账号在获得新分配车辆前,最多可比初始数量少一辆。

期望排序结果

car old_owner new_owner
0    Pickup         1         2
1    Luxury         2         1
2     Racer         1         3
3   Bicycle         3         1
4     Lorry         1         2
5    Cabrio         2         1
6     Truck         1         1

内容的提问来源于stack exchange,提问作者Exa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 18:52:52