擅长:python、mysql、java
<p>你可以这样做:</p>
<pre><code>In [123]: (df.assign(Bad=df.Condition=='Bad')
...: .groupby('ID')
...: .agg({'Condition':pd.Series.tolist,
...: 'Confirmed':pd.Series.tolist,
...: 'Bad':'mean'})
...: )
...:
Out[123]:
Bad Condition Confirmed
ID
D0110 1.0 [Bad] [Undefined]
D0117 1.0 [Bad] [Yes]
D0119 0.5 [Bad, Good] [Yes, No]
D1001 1.0 [Bad, Bad] [Yes, Yes]
D1011 0.5 [Bad, Good] [Yes, Yes]
</code></pre>
<p>垂直变体:</p>
^{pr2}$