擅长:python、mysql、java
<p>IIUC公司:</p>
<pre><code>d = df.set_index(['Service', 'Weight', 'Area', 'Carrier']).Charge.unstack()
d.rename(columns=f'{d.columns.name}{{}}_Charge'.format) \
.reset_index().rename_axis(None, axis=1)
Service Weight Area CarrierA_Charge CarrierB_Charge
0 GRND 1 2 5.0 5.5
1 GRND 2 2 6.0 NaN
2 GRND 3 2 7.0 6.9
</code></pre>
<hr/>
<p>格式和附加列略有不同</p>
<pre><code>d0 = df.set_index(['Service', 'Weight', 'Area', 'Carrier']).Charge.unstack()
d1 = pd.concat(dict(min_charge=d0.min(1), min_charge_carrier=d0.idxmin(1)), axis=1)
fmt = f'{d.columns.name}{{}}_Charge'.format
d0.rename(columns=fmt).join(d1).reset_index().rename_axis(None, axis=1)
Service Weight Area NoneA_Charge NoneB_Charge min_charge min_charge_carrier
0 GRND 1 2 5.0 5.5 5.0 A
1 GRND 2 2 6.0 NaN 6.0 A
2 GRND 3 2 7.0 6.9 6.9 B
</code></pre>