如何根据索引和非索引列对数据框中的值进行排序?
数据框:
ID Colour A B C
45356 Green 1 34 4
34455 Yellow 23 0 1
53443 Brown 3 4 3
45555 Green 5 5 2
Run Code Online (Sandbox Code Playgroud)
表有两个索引列(ID 和颜色)。我想根据 ID(升序)、A(降序)和 C(升序)对表进行排序。
所需的输出是:
ID Colour A B C
34455 Yellow 23 0 1
45356 Green 1 34 4
45555 Green 5 5 2
53443 Brown 3 4 3
Run Code Online (Sandbox Code Playgroud)
我已经尝试过这个:
df.set_index(inplace=True)
df.sort_values(['ID', 'A', 'C'], ascending=['True','False','True'])
Run Code Online (Sandbox Code Playgroud)
这不起作用作为“ID”,因为无法识别列。
你要
df.reset_index().sort_values(
['ID', 'A', 'C'],
ascending=['True','False','True']
).set_index(['ID', 'Colour'])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2138 次 |
| 最近记录: |