将一个数据集划分成训练集、测试集、验证集的代码、
时间: 2023-08-04 21:08:22 浏览: 82
python 划分数据集为训练集和测试集的方法
下面是使用Python的Scikit-learn库实现将一个数据集划分成训练集、测试集、验证集的代码:
```python
# 导入所需的库
from sklearn.model_selection import train_test_split
import pandas as pd
# 读取数据并进行预处理
data = pd.read_csv('data.csv')
data.drop(['id'], axis=1, inplace=True)
data['gender'] = data['gender'].apply(lambda x: 1 if x == 'Male' else 0)
data['purchase'] = data['purchase'].apply(lambda x: 1 if x == 'Yes' else 0)
# 划分数据集
X = data.drop(['purchase'], axis=1)
y = data['purchase']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
X_train, X_val, y_train, y_val = train_test_split(X_train, y_train, test_size=0.25, random_state=42)
# 输出各数据集的大小
print('训练集大小:', len(X_train))
print('验证集大小:', len(X_val))
print('测试集大小:', len(X_test))
```
在上面的代码中,我们首先读取了一个包含客户数据的CSV文件,并进行了一些预处理操作。然后使用`train_test_split`函数将数据集划分为训练集、验证集和测试集。其中,`test_size`参数指定了测试集和验证集的比例,这里是将数据集均分成训练集、验证集和测试集,即80%的数据用于训练,10%用于验证,10%用于测试。最后,输出各数据集的大小。
阅读全文