Python——按组大小对分组的 Pandas 数据框进行升序排序?


要对 Pandas 数据框进行分组,我们使用 groupby()。要对分组数据框按升序进行排序,请使用 sort_values()。size() 方法用于获取数据框的大小。

对于升序排序,请在 sort_values() 中使用以下内容 −

ascending=True

首先,创建一个 Pandas 数据框 −

dataFrame = pd.DataFrame(
   {
      "Car": ['BMW', 'Lexus', 'Audi', 'Mercedes', 'Jaguar', 'Bentley'],

      "Reg_Price": [1000, 1400, 1000, 900, 1700, 900]
   }
)

然后,按照 Reg_Price 列进行分组并按升序排序 −

dataFrame.groupby('Reg_Price').size().sort_values(ascending=True)

示例

以下为代码 −

import pandas as pd

# dataframe with one of the columns as Reg_Price
dataFrame = pd.DataFrame(
   {
      "Car": ['BMW', 'Lexus', 'Audi', 'Mercedes', 'Jaguar', 'Bentley'],

      "Reg_Price": [1000, 1400, 1000, 900, 1700, 900]
   }
)

print"DataFrame...\n",dataFrame

# group according to Reg_Price column and sort in ascending order
print"\nSorted in Ascending order...";
print(dataFrame.groupby('Reg_Price').size().sort_values(ascending=True))

输出

这将产生以下输出−

DataFrame...
        Car Reg_Price
0       BMW      1000
1     Lexus      1400
2      Audi      1000
3  Mercedes       900
4    Jaguar      1700
5   Bentley       900

Sorted in Ascending order...
Reg_Price
1400    1
1700    1
900     2
1000    2
dtype: int64

更新于:14-Sep-2021

474 次浏览

开启您的 职业 生涯

通过完成本课程获取认证

开始
广告