pandas.Index.value_counts #
- 指数。value_counts (归一化= False ,排序= True ,升序= False , bins = None , dropna = True ) [来源] #
返回包含唯一值计数的系列。
生成的对象将按降序排列,以便第一个元素是最常出现的元素。默认情况下排除 NA 值。
- 参数:
- 标准化布尔值,默认 False
如果为 True,则返回的对象将包含唯一值的相对频率。
- 排序bool,默认 True
True 时按频率排序。当为 False 时保留数据的顺序。
- 升序布尔值,默认 False
按升序排序。
- bins整数,可选
不要对值进行计数,而是将它们分组到半开箱中,这是一种方便的方法
pd.cut
,仅适用于数字数据。- dropna bool,默认 True
不包括 NaN 的计数。
- 返回:
- 系列
也可以看看
Series.count
系列中非 NA 元素的数量。
DataFrame.count
DataFrame 中非 NA 元素的数量。
DataFrame.value_counts
DataFrame 上的等效方法。
例子
>>> index = pd.Index([3, 1, 2, 3, 4, np.nan]) >>> index.value_counts() 3.0 2 1.0 1 2.0 1 4.0 1 Name: count, dtype: int64
将Normalize设置为True时,通过将所有值除以值的总和来返回相对频率。
>>> s = pd.Series([3, 1, 2, 3, 4, np.nan]) >>> s.value_counts(normalize=True) 3.0 0.4 1.0 0.2 2.0 0.2 4.0 0.2 Name: proportion, dtype: float64
垃圾箱
箱对于从连续变量到分类变量非常有用;不是对值的唯一出现进行计数,而是将索引划分为指定数量的半开容器。
>>> s.value_counts(bins=3) (0.996, 2.0] 2 (2.0, 3.0] 2 (3.0, 4.0] 1 Name: count, dtype: int64
德罗纳
将dropna设置为False我们还可以看到 NaN 索引值。
>>> s.value_counts(dropna=False) 3.0 2 1.0 1 2.0 1 4.0 1 NaN 1 Name: count, dtype: int64