首页 > 解决方案 > 如何在没有目标值的情况下将训练和测试拆分作为单独的数据框?

问题描述

我只能将 scikit-learn 函数train_test_split应用于具有训练数据和目标数据的两个数据帧。但是如何将我的数据帧(包括目标值)以 0.75 的比例拆分为训练数据帧和测试数据帧?我不想只选择占所有行的 75% 的前 n 行,我希望有随机选择train_test_split,但在训练和测试数据中不应该有相同的行。

标签: pythonpython-3.xdataframescikit-learntrain-test-split

解决方案


这应该将您的数据框拆分为训练并使用您指定的比例进行测试

import pandas as pd
from sklearn.model_selection import train_test_split
        
df = pd.DataFrame({'numbers': [1, 2, 3, 4, 5], 'colors': ['red', 'white', 
                           'blue', 'green', 'black']}, 
                          columns=['numbers', 'colors'])
        
training_dataset, test_dataset = train_test_split(df, train_size=0.75)

推荐阅读