value_counts()函数返回一个Series,其中包含唯一值的计数。它返回一个对象,该对象将按降序排列,以便其第一个元素将成为最频繁出现的元素。
默认情况下,它不包含NA值。
语法
Series.value_counts(normalize=False, sort=True, ascending=False, bins=None, dropna=True)
参数
- normalize - 如果为true,则返回的对象将包含唯一值的相对频率。
- sort - 按值排序。
- ascending - 按升序排序。
- bins - 而不是对值进行计数,而是将它们分组到半开式bins中,从而为仅适用于数字数据的pd.cut提供了便利。
- dropna - 它不包括NaN计数。
返回值
它返回计数的序列。
例1
import pandas as pd import numpy as np index = pd.Index([2, 1, 1, np.nan, 3]) index.value_counts()
输出
1.0 2 3.0 1 2.0 1 dtype: int64
例2
import pandas as pd import numpy as np index = pd.Index([2, 1, 1, np.nan, 3]) a = pd.Series([2, 1, 1, np.nan, 3]) a.value_counts(normalize=True)
输出
1.0 0.50 3.0 0.25 2.0 0.25 dtype: float64
例3
import pandas as pd index = pd.Index([1, 3, 2, 2, 1, np.nan]) index.value_counts() a = pd.Series([1, 3, 2, 2, 1, np.nan]) a.value_counts(bins=2)
输出
(0.997, 2.0] 4 (2.0, 3.0] 1 dtype: int64
例4
import pandas as pd index = pd.Index([1, 3, 2, 2, 1, np.nan]) index.value_counts() a = pd.Series([1, 3, 2, 2, 1, np.nan]) a.value_counts(dropna=False)
输出
2.0 2 1.0 2 NaN 1 3.0 1 dtype: int64