【发布时间】:2022-10-24 06:15:36
【问题描述】:
我有一个这样的数据框:
| name | phase | value |
|---|---|---|
| BOB | 1 | .9 |
| BOB | 2 | .05 |
| BOB | 3 | .05 |
| JOHN | 2 | .45 |
| JOHN | 3 | .45 |
| JOHN | 4 | .05 |
| FRANK | 1 | .4 |
| FRANK | 3 | .6 |
我想找到“阶段”列中的哪个条目在“值”列中具有最大值。
如果多个共享相同的最大值,则保留第一个或随机值作为“相位”。
期望结果表:
| name | phase | value |
|---|---|---|
| BOB | 1 | .9 |
| JOHN | 2 | .45 |
| FRANK | 3 | .6 |
我的方法是:
df.groupby(['name'])[['phase','value']].max()
但它返回了不正确的值。
【问题讨论】: