编写一个函数:sklearn库自带的手写数字数据集进行切分处理,要求参数可以设置数据集的分割比例?
时间: 2024-09-10 20:14:26 浏览: 20
在`sklearn`库中,我们可以使用`train_test_split`函数来切分手写数字数据集(MNIST),该函数能够根据指定的比例划分数据集为训练集和测试集。以下是一个使用`train_test_split`函数的基本示例代码:
```python
from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split
# 加载数据集
digits = load_digits()
# 获取数据集的特征和标签
X, y = digits.data, digits.target
# 使用train_test_split函数进行数据集切分,这里设置切分比例为训练集70%,测试集30%
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
# 输出切分后的数据集信息
print("训练集数量:", len(X_train))
print("测试集数量:", len(X_test))
```
在这个例子中,`test_size=0.3`参数设置了测试集的比例为30%,因此训练集的比例为70%。`random_state`参数用于设置随机数生成器的种子,确保每次切分的结果是一致的。
如果你需要更多地自定义切分过程,可以查阅`train_test_split`的官方文档来了解更多参数设置的选项,例如是否进行分层抽样、切分数据集的具体数量等。