如何从 Python Pandas 中的 value_counts() 中提取值名称和计数?

如何从 Python Pandas 中的 value_counts() 中提取值名称和计数?

Pandas 是 Python 中用于数据分析的重要库之一。其中的 value_counts() 函数可以用于获取一个 Series 中每个值出现的频数,但是输出的结果是一个 Series,只包含值计数和索引,如果需要进一步处理这些数据,需要先将数据提取出来。那么该如何从 value_counts() 中提取值名称和计数呢?

更多Pandas相关文章,请阅读:Pandas 教程

代码示例

下面是一个示例代码:

import pandas as pd

# 创建一个 DataFrame
data = {"animal": ["cat", "dog", "cat", "bird", "dog"]}
df = pd.DataFrame(data)

# 计算每个值出现的频数
value_counts = df["animal"].value_counts()

# 输出 value_counts 的类型
print(type(value_counts))

# 输出 value_counts
print(value_counts)

在上面的代码中,我们首先创建了一个 DataFrame,并将其中的一个列作为参数传入 value_counts() 函数中计算每个值出现的频数。然后我们使用 print() 函数输出了 value_counts 变量的类型和具体的值,输出结果如下:

<class 'pandas.core.series.Series'>
cat     2
dog     2
bird    1
Name: animal, dtype: int64

从输出结果可以看出,value_counts() 计算出来的对象是一个 Series,只包含每个值的计数和对应的索引。

如果需要将这些值和计数分别提取出来,可以使用以下代码:

# 获取每个值的名称和计数
value_counts_index = value_counts.index.tolist()
value_counts_values = value_counts.values.tolist()

# 输出每个值的名称和计数
for i in range(len(value_counts_index)):
    print(f"{value_counts_index[i]}: {value_counts_values[i]}")

在上面的代码中,我们使用 index.tolist() 和 values.tolist() 函数将 value_counts 对象中的索引和值分别转换为列表。然后使用 for 循环遍历这两个列表,输出每个值的名称和计数。输出结果如下:

cat: 2
dog: 2
bird: 1

从输出结果可以看出,通过将 value_counts 对象中的索引和值分别提取出来,我们成功地获取了每个值的名称和计数。

结论

通过上面的示例代码,我们可以看到,从 Python Pandas 中的 value_counts() 中提取值名称和计数的方法非常简单,只需要将 value_counts 对象中的索引和值分别提取出来即可。这样就可以方便地进一步处理这些数据了。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程

Pandas 教程