大Pandas和海洋生物的数据太大了。如何创建“其他”列?

2024-04-26 12:52:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一系列的名字,每个都和一个ID有关。 在熊猫中,我把这些名字组合在一起,这样每个ID都会有一个组合,而不是许多单独的名字。你知道吗

然后我创建了一个计数,看看这些组合会出现多少次。 例如,我想要吃苹果和橘子的人。你知道吗

**Combination           Count**
Apples, Oranges         2
Apples                  1
Oranges                 1

但是,我的特定数据集太大,并且我有许多计数为1的元素。我试图将这些组合成一个“其他”组,使用seaborn作为条形图显示。但是,由于数据量太大,所有名称都重叠。我想将我的数据集的最后500行合并到“other”(作为组合名),计数是所有这些计数的总和。你知道吗

在这个例子中是这样的:

**Combination           Count**
Apples, Oranges         2
Other                   2

我试过使用groupby,但由于缺乏熊猫方面的经验,我不确定如何用语法来写这篇文章。任何帮助都将不胜感激。你知道吗


Tags: 数据苹果名称id元素countseaborn名字
1条回答
网友
1楼 · 发布于 2024-04-26 12:52:14

假设您已经完成了import numpy as np,您可以使用np.where()来生成一个新的列,如果Count是1,或者现有的Combination,则该列将使用'Other'否则。那么我们可以.groupbysum找到'New Combination'上的总数。假设您的帧名为df

df['New Combination'] = np.where(df['Count'] == 1, 'Other', df['Combination'])
totals = df.groupby('New Combination').agg({'Count': 'sum'})

这将为您提供:

                  Count
New Combination       
Apples, Oranges       2
Other                 2

相关问题 更多 >