pandas.core.groupby.DataFrameGroupBy.nunique #

DataFrameGroupBy。nunique ( dropna = True ) [来源] #

返回 DataFrame,其中包含每个位置中唯一元素的计数。

参数
dropna bool,默认 True

不要在计数中包含 NaN。

返回
独特之处:数据框

例子

>>> df = pd.DataFrame({'id': ['spam', 'egg', 'egg', 'spam',
...                           'ham', 'ham'],
...                    'value1': [1, 5, 5, 2, 5, 5],
...                    'value2': list('abbaxy')})
>>> df
     id  value1 value2
0  spam       1      a
1   egg       5      b
2   egg       5      b
3  spam       2      a
4   ham       5      x
5   ham       5      y
>>> df.groupby('id').nunique()
      value1  value2
id
egg        1       1
ham        1       2
spam       2       1

检查具有相同 id 但值冲突的行:

>>> df.groupby('id').filter(lambda g: (g.nunique() > 1).any())
     id  value1 value2
0  spam       1      a
3  spam       2      a
4   ham       5      x
5   ham       5      y