pandas.Index.value_counts#
- Index.value_counts(normalize=False, sort=True, ascending=False, bins=None, dropna=True)[源代码]#
返回包含唯一值计数的系列。
结果对象将按降序排列,因此第一个元素是出现频率最高的元素。默认情况下排除NA值。
- 参数
- normalize布尔值,默认为False
如果为True,则返回的对象将包含唯一值的相对频率。
- sort布尔值,默认为True
按频率排序。
- ascending布尔值,默认为False
按升序排序。
- bins整型,可选
不是计算数值,而是将它们分组到半开的垃圾箱中,这对
pd.cut
,仅适用于数字数据。- dropna布尔值,默认为True
不包括NaN的数量。
- 退货
- 系列
参见
Series.count
系列中非NA元素的数量。
DataFrame.count
DataFrame中的非NA元素数。
DataFrame.value_counts
DataFrames上的等效方法。
示例
>>> 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 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 dtype: float64
bins
对于从连续变量到分类变量的转换,垃圾箱非常有用;不计算唯一出现的值,而是将索引划分为指定数量的半开垃圾箱。
>>> s.value_counts(bins=3) (0.996, 2.0] 2 (2.0, 3.0] 2 (3.0, 4.0] 1 dtype: int64
dropna
使用 dropna 设置为 False 我们还可以看到NaN指标值。
>>> s.value_counts(dropna=False) 3.0 2 1.0 1 2.0 1 4.0 1 NaN 1 dtype: int64