value_counts()
方法返回一个序列Series,该序列用于统计某列中各个值的出现次数的函数。当配合参数 bins
使用时,它可以将数据分成指定的区间,然后统计每个区间内值的出现次数。
value_counts()
是Series拥有的方法,一般在DataFrame中使用时,需要指定对哪一列或行使用。value_counts()
只能对应series,不能直接对整个Dataframe做操作。
例:假设有一个包含身高数据的DataFrame:
姓名 | 身高 |
---|---|
小明 | 175 |
小红 | 180 |
小刚 | 160 |
小丽 | 180 |
小美 | 162 |
小强 | 175 |
小林 | 180 |
可以使用 value_counts()
统计各个身高出现的次数:
height_counts = df['身高'].value_counts()
结果如下:
180 3
175 2
162 1
160 1
Name: 身高(cm), dtype: int64
这表示在数据中,身高为180cm的出现了3次,175cm出现了2次,162cm出现了1次,160cm出现了1次。
如果想将身高分成几个区间并统计每个区间内的人数,可以使用 bins
参数:
height_counts_bins = df['身高'].value_counts(bins=[150, 160, 170, 180, 190])
这将把身高分成以下区间:(150, 160], (160, 170], (170, 180], (180, 190],然后统计每个区间内的人数。
那么 height_counts_bins 的输出结果:
(150.0, 160.0] 3
(160.0, 170.0] 2
(170.0, 180.0] 1
(180.0, 190.0] 0
Name: 身高(cm), dtype: int64