Pandas计算一列数据中不同项目的数量

时间:2013-07-08 14:46:25

标签: python-2.7 pandas

我有一个包含以下内容的数据框(只是一个示例):

Subtype    Cluster
H10N4      59
H10N4      59
H10N4      23
H10N4      59
H3N8       22
H3N8       22
H3N8       44
H3N8       44

我希望能够找出给定子类型有多少个不同的聚类。在这种情况下,所需的输出是:

Subtype    # of Clusters
H10N4      2
H3N8       2

我一直在做Pandas,我在数据框中应用.groupby('Subtype'),但在我这样做之后,我不确定如何继续进行。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:2)

您可以使用groupby

In [11]: g = df.groupby('Subtype')

然后计算每组中的唯一群集:

In [12]: g.apply(lambda s: len(s['Cluster'].unique()))
Out[12]:
Subtype
H10N4      2
H3N8       2
dtype: int64