Pandas使用键对数据框中的值进行排序

时间:2017-12-27 23:08:36

标签: python-3.x pandas sorting

我有两个按列连接的Pandas数据帧。左侧数据框键入为“旧”,右侧数据帧键入为“新”。每个数据框都有相同的列名,我想通过其中一个“新”列来进行sort_values。由于“旧”和“新”键,我似乎无法访问排序。有人有工作吗?感谢。

编辑#1 - 代码示例(想要在df_combined中按['New'] ['Col1']排序:

df1=pd.DataFrame({'Col1' : [1, 2, 3, 4], 'Col2' : [4, 4, 5, 6], 'Col3' : [11, 
12, 13, 14]})
df2=pd.DataFrame({'Col1' : [7, 1, 51, 6], 'Col2' : [90, 99, 99, 97], 'Col3' : 
[11, 12, 13, 14]})
df_combined=pd.concat([df1, df2], axis='columns', keys=['Old','New'])

1 个答案:

答案 0 :(得分:1)

要对此数据帧进行排序,您必须使用元组进行列选择:

df_combined.sort_values(by=('New', 'Col1'))

输出:

   Old            New          
  Col1 Col2 Col3 Col1 Col2 Col3
1    2    4   12    1   99   12
3    4    6   14    6   97   14
0    1    4   11    7   90   11
2    3    5   13   51   99   13