Python 如何在具有两个条件的数据帧中找到最佳组合
试着找出今年你能为一场梦幻比赛组建的最好的自行车队。有两个条件:Python 如何在具有两个条件的数据帧中找到最佳组合,python,pandas,dataframe,combinations,Python,Pandas,Dataframe,Combinations,试着找出今年你能为一场梦幻比赛组建的最好的自行车队。有两个条件: 团队总价格应低于120米 我的队里肯定有20名车手 以下是我的数据帧示例(2021年结果): 我曾尝试过这样的事情,但如果我的预算超过1.2亿,我想不出如何改变最后添加的骑手: Best_team = [] Team_points = 0 Team_price = 0 numberOfRiders = 0 for i, row in df.iterrows(): while numberOfRiders != 20:
Best_team = []
Team_points = 0
Team_price = 0
numberOfRiders = 0
for i, row in df.iterrows():
while numberOfRiders != 20:
while Team_price <= 120:
if row.Name in Best_team:
continue
else:
Best_team.append(row.Name)
Team_price += row.Price
Team_points += row['Total Points 2021']
numberOfRiders += 1
else:
break
最佳团队=[]
团队积分=0
团队价格=0
乘客人数=0
对于i,df.iterrows()中的行:
而车手的数量!=20:
当团队定价时,我的第一个想法是让线性优化引擎为您完成工作。比如scipy.optimize。价格约束下的最大化点
Best_team = []
Team_points = 0
Team_price = 0
numberOfRiders = 0
for i, row in df.iterrows():
while numberOfRiders != 20:
while Team_price <= 120:
if row.Name in Best_team:
continue
else:
Best_team.append(row.Name)
Team_price += row.Price
Team_points += row['Total Points 2021']
numberOfRiders += 1
else:
break