value_counts用法
时间: 2024-05-14 17:19:12 浏览: 11
`value_counts()` 是 pandas 库中的一个函数,用于统计一维数据中每个不同值出现的频率。其返回一个 pandas Series,其中索引是不同的值,值是对应值出现的次数。
下面是一个简单的例子,假设我们有一个 Series 包含不同的颜色:
```python
import pandas as pd
colors = pd.Series(['red', 'blue', 'green', 'red', 'yellow', 'blue', 'green', 'red'])
```
我们可以使用 `value_counts()` 函数来统计每种颜色出现的次数:
```python
counts = colors.value_counts()
print(counts)
```
输出结果如下:
```
red 3
green 2
blue 2
yellow 1
dtype: int64
```
可以看到,'red' 出现了 3 次,'green' 和 'blue' 各出现了 2 次,'yellow' 出现了 1 次。
相关问题
pandas value_counts 详细用法
pandas中的value_counts()函数可以用于统计某一列中不同值出现的次数,它返回一个Series对象,其中包含每个不同值的计数。以下是它的详细用法:
```python
DataFrame['column_name'].value_counts(
normalize=False,
sort=True,
ascending=False,
bins=None,
dropna=True,
)
```
参数解释:
- normalize:设置为True时,返回每个不同值的百分比。
- sort:设置为True时,将结果按照计数值进行排序。
- ascending:设置为False时,将计数值从大到小排序。
- bins:设置为整数n时,将数据分为n个等宽的区间,并统计每个区间中不同值的计数。
- dropna:设置为False时,将包含NaN值的计数值也进行计算。
示例:
```python
import pandas as pd
data = {'name': ['Tom', 'Jerry', 'Tom', 'Lucy', 'Jerry']}
df = pd.DataFrame(data)
# 统计name列中每个不同值出现的次数
value_counts = df['name'].value_counts()
print(value_counts)
# 按照计数值进行排序
sorted_counts = df['name'].value_counts().sort_values()
print(sorted_counts)
# 返回每个不同值的百分比
percent_counts = df['name'].value_counts(normalize=True)
print(percent_counts)
# 将数据分为3个等宽的区间,并统计每个区间中不同值的计数
binned_counts = df['name'].value_counts(bins=3)
print(binned_counts)
# 包含NaN值的计数值也进行计算
nan_counts = pd.Series(['Tom', 'Jerry', 'Tom', 'Lucy', None]).value_counts(dropna=False)
print(nan_counts)
```
pandas中value_counts的用法
Pandas中的value_counts()是用来统计数据集中每个值出现的次数的函数。使用方法如下:
1. 首先导入pandas库
2. 建立一个数据框或者读取一个已有的数据框
3. 对某一列使用value_counts()函数,例如: df['column_name'].value_counts()
如果要对整个数据框使用value_counts(),可以使用:
df.value_counts()
通过设置参数normalize=True 可以得到频率。
例如:
``` python
import pandas as pd
data = {'Name': ['Tom', 'Jerry', 'Tom', 'Jerry', 'Tom'],
'Age': [25, 30, 35, 30, 28]
}
df = pd.DataFrame(data)
print(df)
# Name Age
#0 Tom 25
#1 Jerry 30
#2 Tom 35
#3 Jerry 30
#4 Tom 28
print(df['Name'].value_counts())
# Tom 3
# Jerry 2
# Name: Name, dtype: int64
```