【发布时间】:2022-11-21 06:42:24
【问题描述】:
这是df的一小部分。
在这种情况下,我需要映射 3 个 y 值:0.933883、97.658330 和 1.650013
我有这个df
x y1 y2 y3 y4 d1 d2 d3 d4
23 5.3 NaN NaN 0.933883 NaN NaN NaN 0.174866 NaN
25 5.3 NaN NaN NaN 97.658330 NaN NaN NaN 0.038670
26 5.3 NaN NaN 1.650013 NaN NaN NaN 0.541264 NaN
29 5.3 NaN NaN 97.658330 NaN NaN NaN 96.549581 NaN
30 5.3 NaN NaN NaN 1.650013 NaN NaN NaN 96.046987
每列不超过一个这些值,我已经删除了重复项。
我需要的:
我不能在多个列中具有相同的值。
选择删除哪一行的条件如下所示例子:
y3 和y4 列中有97.658330。因为对于该值,d3(96.549581) 大于d4(0.038670),所以删除行29。
y3 和y4 列中有1.650013。由于d4(96.046987) 大于d3(0.541264),因此删除行30。
输出:
x y1 y2 y3 y4 d1 d2 d3 d4
23 5.3 NaN NaN 0.933883 NaN NaN NaN 0.174866 NaN
25 5.3 NaN NaN NaN 97.658330 NaN NaN NaN 0.038670
26 5.3 NaN NaN 1.650013 NaN NaN NaN 0.541264 NaN
附言在完整的数据框中有更多的值需要映射。
【问题讨论】: