【问题标题】:Test train data split - Machine learning测试列车数据拆分 - 机器学习
【发布时间】:2022-02-07 17:48:11
【问题描述】:

我正在尝试进行一些测试火车拆分(90% 和 10%)并在查询下方使用

X_train, X_test, y_train, y_test = train_test_split(pdf.drop(columns = list(set(cols_not_used).union(set(['RANK'])))) , pdf['RANK'], random_state = 13 , train_size = 0.9)

但在我的数据框中,我有“日期”列,并希望根据日期拆分训练和测试。 即,测试数据作为最近 3 个月的信息,其余作为训练数据集。

请告诉我如何做到这一点。

【问题讨论】:

  • 如果您要根据日期分开训练/测试,最好根据日期进行切片。例如,df[‘date’]>3_month_prior
  • 请编辑问题以将其限制为具有足够详细信息的特定问题,以确定适当的答案。

标签: python pandas machine-learning training-data train-test-split


【解决方案1】:

不确定这是否是最好的方法,但您可以按时间对数据进行排序。

df = df.sort_values(by="date") 

按时间排序后,您可以创建训练测试集:

import numpy as np 
train_set, test_set = np.split(data, [int(0.9 *len(df))])

下一步是简单地将预测变量和解释变量分开:

xtrain = train_set.drop('Survived', axis=1)
ytrain = train_set['Survived']
xtest = test_set.drop('Survived', axis=1)
ytest = test_set['Survived']

【讨论】:

    猜你喜欢
    • 2016-12-03
    • 2019-08-24
    • 2021-06-02
    • 2017-02-04
    • 2020-02-21
    • 2020-07-24
    • 2016-04-21
    • 2019-07-03
    • 2011-10-04
    相关资源
    最近更新 更多