📌  相关文章
📜  根据 Pandas 中的行频率对 Dataframe 进行排序

📅  最后修改于: 2022-05-13 01:55:48.004000             🧑  作者: Mango

根据 Pandas 中的行频率对 Dataframe 进行排序

在本文中,我们将讨论如何在 Pandas 中使用 count() 和 sort_values()。所以pandas中的count计算dataframe列中元素出现的频率,然后sort根据元素频率对dataframe进行排序。

  • count():此方法将向您显示 DataFrame 中每列的值数。
  • sort_values():此方法帮助我们对数据进行排序。在此方法中,我们传递列,我们的数据框根据此列进行排序。

示例 1:根据元素频率对数据框进行降序排序的程序。

Python
# import pandas
import pandas as pd
  
# create dataframe
df = pd.DataFrame({'Name': ['Mukul', 'Rohan', 'Mukul', 'Manoj',
                            'Kamal', 'Rohan', 'Robin'],
                     
                   'age': [22, 22, 21, 20, 21, 24, 20]})
  
# print dataframe
print(df)
  
# use count() and sort()
df = df.groupby(['Name'])['age'].count().reset_index(
  name='Count').sort_values(['Count'], ascending=False)
  
# print dataframe
print(df)


Python
# import pandas
import pandas as pd
  
# create dataframe
df = pd.DataFrame({'Name': ['Mukul', 'Rohan', 'Mukul', 'Manoj',
                            'Kamal', 'Rohan', 'Robin'],
                     
                   'age': [22, 22, 21, 20, 21, 24, 20]})
  
# print dataframe
print(df)
  
# use count() and sort()
df = df.groupby(['Name'])['age'].count().reset_index(
  name='Count').sort_values(['Count'], ascending=True)
  
# print dataframe
print(df)


输出:



示例 2:根据元素频率对数据框进行升序排序的程序。

Python

# import pandas
import pandas as pd
  
# create dataframe
df = pd.DataFrame({'Name': ['Mukul', 'Rohan', 'Mukul', 'Manoj',
                            'Kamal', 'Rohan', 'Robin'],
                     
                   'age': [22, 22, 21, 20, 21, 24, 20]})
  
# print dataframe
print(df)
  
# use count() and sort()
df = df.groupby(['Name'])['age'].count().reset_index(
  name='Count').sort_values(['Count'], ascending=True)
  
# print dataframe
print(df)

输出: