Python – 按组大小对分组的 Pandas 数据框进行排序?
为了对 Pandas 数据框进行分组,我们使用groupby(). 要按升序或降序对分组数据框进行排序,请使用sort_values(). 该size()方法用于获取数据帧大小。
对于升序排序,请使用以下内容sort_values()-
ascending=True
对于降序排序,请使用以下内容sort_values()-
ascending=False
首先,创建一个熊猫数据框 -
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=False)
接下来,根据 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 descending order
print"Sorted in Descending order...\n";
print(dataFrame.groupby('Reg_Price').size().sort_values(ascending=False))
# group according to Reg_Price column and sort in ascending order
print"Sorted in Ascending order...\n";
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 Descending order...
Reg_Price
1000 2
900 2
1700 1
1400 1
dtype: int64
Sorted in Ascending order...
Reg_Price
1400 1
1700 1
900 2
1000 2
dtype: int64
以上是 Python – 按组大小对分组的 Pandas 数据框进行排序? 的全部内容, 来源链接: utcz.com/z/357080.html