最佳方式优化配对(Python)

2024-06-01 20:21:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试优化两组数据(“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,但我不知道从哪里开始。。。你知道吗

任何指点都将不胜感激!提前谢谢!你知道吗


Tags: 数据dataframepandasfor定义optimal特征post