首页 > 解决方案 > 从基于条件过滤的行组合中进行选择 - 口袋妖怪数据

问题描述

我有一个 49x49 的数据框,看起来像这样

        normal fire water electric ....   max
normal       1     1     1        1       500
fire         1     1    0.25      1       400
water        1     4    1        0.5      450
electric     1     1    2         1       500
.
.

我想找到满足特定条件的 6 行的组合。

  1. 对于 6 行(有重复)的每个组合,找到按列的最高值(不包括最大列)。如果这些值中的任何一个低于设定值,则丢弃该组合。
  2. 对于这 6 行,将最大列相加。按最大值和的降序排列组合。

以 6 乘 6 的方式遍历所有组合似乎效率太低。我想知道 scipy.optimize 在这里是否有用,但不知道如何设置目标函数。

将不胜感激任何帮助。

标签: pythonpandasdataframeloopsoptimization

解决方案


推荐阅读