获取每个类别样本数量:Python实现与代码示例
获取每个类别样本数量: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 著作权归作者所有。请勿转载和采集!