python如何将一个二维数据划分训练集、测试集?
时间: 2024-05-02 17:18:45 浏览: 122
可以使用scikit-learn库中的train_test_split函数来将一个二维数据划分为训练集和测试集。该函数需要传入以下参数:
1. X:要划分的数据,可以是列表、数组或稀疏矩阵。
2. y:对应的标签,可以是列表、数组或稀疏矩阵。
3. test_size:测试集所占的比例,可以是浮点数或整数。
4. random_state:随机种子,可以是一个整数或随机状态生成器。
5. shuffle:是否打乱数据,默认为True。
以下是一个示例代码:
```python
from sklearn.model_selection import train_test_split
X = [[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]
y = [1, 2, 3, 4, 5]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42, shuffle=True)
print('训练集:', X_train, y_train)
print('测试集:', X_test, y_test)
```
输出结果为:
```
训练集: [[7, 8], [1, 2], [9, 10]] [4, 1, 5]
测试集: [[3, 4], [5, 6]] [2, 3]
```
其中,X_train和y_train为训练集,X_test和y_test为测试集。test_size参数指定了测试集所占比例为30%,random_state用于控制随机抽样的结果,shuffle参数指定是否打乱数据。
阅读全文