样本上采样python
时间: 2024-05-20 22:09:50 浏览: 150
样本上采样是指从一个给定的数据集中随机抽取一些样本,以便更好地代表整个数据集。在Python中,有很多库可以实现样本上采样,其中最常用的是Scikit-Learn库的resample()函数。这个函数可以根据需要进行样本上采样、下采样或者过采样。
下面是一个示例代码,演示如何使用Scikit-Learn库的resample()函数实现样本上采样:
```
from sklearn.utils import resample
import pandas as pd
# 读入数据集
df = pd.read_csv('data.csv')
# 将数据集分为两部分:少数类和多数类
minority_class = df[df['class'] == 'minority']
majority_class = df[df['class'] == 'majority']
# 对少数类进行上采样
minority_upsampled = resample(minority_class,
replace=True, # 重复抽样
n_samples=len(majority_class), # 与多数类样本数量相同
random_state=42) # 设置随机种子
# 将多数类和上采样后的少数类组合起来
upsampled = pd.concat([majority_class, minority_upsampled])
# 输出结果
print(upsampled['class'].value_counts())
```
阅读全文