如何按列对数据框进行分组?

Posted

技术标签:

【中文标题】如何按列对数据框进行分组?【英文标题】:How to group a dataframe by a column? 【发布时间】:2022-01-22 14:35:05 【问题描述】:

所以我在这里有这个数据框。我想制作一个出现次数最多的国家/地区的饼图。为了让我的标签正确,我需要创建一个名为“国家”的列表,该列表以出现次数最多的国家开头,以出现一次的国家结尾。我该怎么做呢?

【问题讨论】:

为了澄清,我希望 ITA 启动列表,因为它出现的次数最多。但是,如果 ITA 以第二名开始呢?我该怎么写?谢谢。 【参考方案1】:

使用默认排序的Series.value_counts,因此获取索引并将它们转换为列表:

countries = df["Nationality"].value_counts().index.tolist()

【讨论】:

你是最棒的!【参考方案2】:

我不确定我是否得到了你的帮助,但也许这是一个解决方案:

df = sorted(your_df, key = your_df.loc[:, ["Nationality"]].count, 反向=真)

您的问题是按频率对元素进行排序

【讨论】:

以上是关于如何按列对数据框进行分组?的主要内容,如果未能解决你的问题,请参考以下文章