如何对 Pandas DataFrame 的多列进行排序?

要对 Pandas DataFrame 的多列进行排序,我们可以使用sort_values()方法。

步骤

  • 创建二维、大小可变、潜在异构的表格数据df

  • 打印输入数据帧df

  • 初始化一个变量col来对进行排序。

  • 打印排序后的 DataFrame。

示例

import pandas as pd

df = pd.DataFrame(
   {
      "x": [5, 2, 7, 0],
      "y": [4, 7, 5, 1],
      "z": [9, 3, 5, 1]
   }
)
print "Input DataFrame is:\n", df

col = ["x", "y"]
df = df.sort_values(col, ascending=[False, True])
print "排序后的列 ", col, "DataFrame is:\n", df
输出结果
Input DataFrame is:
   x  y  z
0  5  4  9
1  2  7  3
2  7  5  5
3  0  1  1

排序后的列 ['x', 'y'] DataFrame is:
   x  y  z
2  7  5  5
0  5  4  9
1  2  7  3
3  0  1  1