擅长:python、mysql、java
<p>您可以使用<code>groupby</code>并对其进行迭代:</p>
<pre><code>dfs = [v for k, v in df.groupby(['method', 'method_par1', 'variantB_option'])['x', 'y']]
dfs[0]
method method_par1 variantB_option x y
0 m1 variantA NaN 2 13
1 m1 variantA NaN 1 11
dfs[1]
method method_par1 variantB_option x y
6 m1 variantB 15 54 39
7 m1 variantB 15 1 4
dfs[2]
method method_par1 variantB_option x y
4 m1 variantB 25 10 9
5 m1 variantB 25 5 3
dfs[3]
method method_par1 variantB_option x y
2 m2 NaN NaN 1 7
3 m2 NaN NaN 5 3
</code></pre>
<p>如果您的<code>NaN</code>是实<em>而不是数字</em>,<code>groupby</code>将只返回不带<code>NaN</code>的三元组。在这种情况下,使用<code>df.fillna()</code>作为您的首选值</p>