熊猫数据框过滤并依靠聚合结果

时间:2019-01-25 17:01:10

标签: pandas dataframe count where aggregation

我尝试过滤并计算聚合结果:

import pandas as pd
df = pd.DataFrame([[2],[3],[2]],columns=['A'])
print(df)

   A 
 0 2 
 1 3 
 2 2

dfCount = df.groupby(['A']).agg({'A':['count']}).reset_index(drop=True) 
print(dfCount)

  count 
A 
2 2 
3 1

result = dfCount.where(dfCount.count == 1).count()

我只想要原始数据集中只有一次的表达式数量。 在这种情况下,我希望结果为1。

但是出现以下错误:

ValueError: Array conditional must be same shape as self

1 个答案:

答案 0 :(得分:1)

然后您应该使用value_counts

df.A.value_counts().eq(1).sum()
Out[416]: 1