获取每个类别样本数量:Python实现与代码示例

在机器学习和数据分析中,了解数据集中每个类别的样本数量至关重要。这有助于我们理解数据集的分布情况,识别潜在的类别不平衡问题,并为模型训练和评估提供指导。

本篇文章将介绍如何使用Python获取每个类别中的样本数量,并提供详细的代码示例和解释。

方法一:使用collections.Counter()

collections.Counter() 是 Python 内置库中的一个强大工具,可以用来统计可迭代对象中每个元素出现的次数。我们可以利用它来快速统计每个类别的样本数量。pythonfrom collections import Counter

示例数据集data = ['cat', 'dog', 'cat', 'bird', 'dog', 'cat', 'cat']

使用 Counter 统计每个类别样本数量class_counts = Counter(data)

打印结果print(class_counts)

输出结果:

Counter({'cat': 4, 'dog': 2, 'bird': 1})

方法二:使用pandas库

如果你在使用 pandas 库处理数据,可以使用 value_counts() 方法来统计每个类别的样本数量。pythonimport pandas as pd

示例数据集data = {'animal': ['cat', 'dog', 'cat', 'bird', 'dog', 'cat', 'cat']}df = pd.DataFrame(data)

使用 value_counts() 统计每个类别样本数量class_counts = df['animal'].value_counts()

打印结果print(class_counts)

输出结果:

cat 4dog 2bird 1Name: animal, dtype: int64

总结

本文介绍了两种使用 Python 获取每个类别样本数量的方法。collections.Counter() 方法简洁高效,适用于处理列表等简单数据结构;而 pandas.value_counts() 方法则更适合处理 DataFrame 等结构化数据。选择哪种方法取决于你的具体需求和数据格式。


原文地址: https://www.cveoy.top/t/topic/btcq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录