Python 数据划分:训练集 (70%) 和测试集 (30%) 的最佳实践
首先,需要将数据按照一定的规则(如随机抽样)划分为训练集和测试集。以下是 Python 代码示例:
import pandas as pd
from sklearn.model_selection import train_test_split
# 读取数据
data = pd.read_csv('data.csv')
# 划分训练集和测试集
train_data, test_data, train_label, test_label = train_test_split(data.iloc[:, :-1], data.iloc[:, -1], test_size=0.3, random_state=42)
# 打印训练集和测试集的大小
print('训练集大小:', train_data.shape[0])
print('测试集大小:', test_data.shape[0])
解释一下代码:
pd.read_csv('data.csv')读取数据文件,这里假设数据文件名为'data.csv'。train_test_split是 scikit-learn 库提供的函数,用于划分训练集和测试集。其中,第一个参数data.iloc[:, :-1]表示除了最后一列(即标签列)外的所有列,即特征列。第二个参数data.iloc[:, -1]表示最后一列,即标签列。test_size=0.3表示测试集的大小为 30%。random_state=42表示随机种子,保证每次运行代码时划分的训练集和测试集都相同。train_data和train_label分别表示训练集的特征和标签,test_data和test_label分别表示测试集的特征和标签。train_data.shape[0]和test_data.shape[0]分别表示训练集和测试集的大小,即样本数。
原文地址: https://www.cveoy.top/t/topic/n6dk 著作权归作者所有。请勿转载和采集!