我正在尝试优化两组数据(“A”和“B”)之间的配对。我创建了一个包含所有可能的成对组合的Pandas数据帧,以及一些定义特征(pre_optimized = pd.DataFrame(possible_pairs
):
A B C D
1 a 23.05 2
1 b 100.00 4
1 c 15.12 7
2 a 50.37 5
2 d 72.65 6
2 c 42.00 1
我想要一个最优配对(post_optimized = pd.DataFrame(optimal_pairs
)的输出,这样:
maximize(post_optimized['C'].sum())
for x in post_optimized['A'].unique():
10 <= post_optimized[post_optimized['A']==x]['D'].sum()
我希望输出数据帧看起来像上面的那样,但是仅使用那些基于约束被认为是“最优”的配对:
A B C D
1 a 23.05 2
1 b 100.00 4
2 d 72.65 6
2 c 42.00 1
我很确定我将需要使用scipy.optimize
,但我不知道从哪里开始。。。你知道吗
任何指点都将不胜感激!提前谢谢!你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐