Python Pandas - 根据元素频率对 DataFrame 进行降序排序
pythonserver side programmingprogramming更新于 2025/11/5 8:44:17
要按升序或降序对数据进行排序,请使用 sort_values() 方法。对于降序,请在 sort_values() 方法中使用以下内容 −
ascending=False
导入所需的库 −
import pandas as pd
创建一个包含 3 列的 DataFrame −
dataFrame = pd.DataFrame(
{
&"Car": ['BMW', 'Lexus', 'BMW', 'Mustang', 'Mercedes', 'Lexus'],"Reg_Price": [7000, 1500, 5000, 8000, 9000, 2000],"Place": ['Pune', 'Delhi', 'Mumbai', 'Hyderabad', 'Bangalore', 'Chandigarh']
}
)
要根据元素频率对 DataFrame 进行降序排序,我们需要计算出现次数。因此,count() 也与 sort_values() 一起用于降序排序 −
dataFrame.groupby(['Car'])['Reg_Price'].count().reset_index(name='Count').sort_values(['Count'], ascending=False)
示例
以下是代码 −
import pandas as pd
# 创建 DataFrame
dataFrame = pd.DataFrame(
{
"Car": ['BMW', 'Lexus', 'BMW', 'Mustang', 'Mercedes', 'Lexus'],"Reg_Price": [7000, 1500, 5000, 8000, 9000, 2000],"Place": ['Pune', 'Delhi', 'Mumbai', 'Hyderabad', 'Bangalore', 'Chandigarh']
}
)
print"DataFrame ...\n",dataFrame
# Sort DataFrame in descending order according to the element frequency
dataFrame = dataFrame.groupby(['Car'])['Reg_Price'].count().reset_index(name='Count').sort_values(['Count'], ascending=False)
print"\nSorting DataFrame ...\n",dataFrame
输出
这将产生以下输出 −
DataFrame ... Car Place Reg_Price 0 BMW Pune 7000 1 Lexus Delhi 1500 2 BMW Mumbai 5000 3 Mustang Hyderabad 8000 4 Mercedes Bangalore 9000 5 Lexus Chandigarh 2000 Sorting DataFrame ... Car Count 0 BMW 2 1 Lexus 2 2 Mercedes 1 3 Mustang 1
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

