maxframe.dataframe.Series.value_counts#

Series.value_counts(normalize=False, sort=True, ascending=False, bins=None, dropna=True, method='auto')#

返回一个包含唯一值计数的 Series。

结果对象将按降序排列,因此第一个元素是出现频率最高的元素。默认情况下排除 NA 值。

参数:
  • normalize (bool, default False) -- 如果为 True,则返回的对象将包含唯一值的相对频率。

  • sort (bool, default True) -- 按频率排序。

  • ascending (bool, default False) -- 按升序排序。

  • bins (int, optional) -- 不是计算值的计数,而是将它们分组到半开区间中,这是 pd.cut 的便捷方式,仅适用于数值数据。

  • dropna (bool, default True) -- 不包括 NaN 的计数。

  • method (str, default 'auto') -- 'auto'、'shuffle' 或 'tree','tree' 方法提供更好的性能,而如果聚合结果非常大,推荐使用 'shuffle','auto' 将在分布式模式下使用 'shuffle' 方法,在本地模式下使用 'tree'。

返回类型:

Series

参见

Series.count

Series 中非 NA 元素的数量。

DataFrame.count

DataFrame 中非 NA 元素的数量。

示例

>>> import maxframe.dataframe as md
>>> import numpy as np
>>> s = md.Series([3, 1, 2, 3, 4, np.nan])
>>> s.value_counts().execute()
3.0    2
4.0    1
2.0    1
1.0    1
dtype: int64

normalize 设置为 True 时,通过将所有值除以值的总和来返回相对频率。

>>> s = md.Series([3, 1, 2, 3, 4, np.nan])
>>> s.value_counts(normalize=True).execute()
3.0    0.4
4.0    0.2
2.0    0.2
1.0    0.2
dtype: float64

dropna

dropna 设置为 False 时,我们也可以看到 NaN 索引值。

>>> s.value_counts(dropna=False).execute()
3.0    2
NaN    1
4.0    1
2.0    1
1.0    1
dtype: int64