首页 > 解决方案 > sklearn 火车测试按年份划分

问题描述

我有一个从 2016 年到 2020 年的数据集,其中有一个“年份”列。我想使用 2016-2017 作为训练数据,使用 2018-2020 作为测试数据。有没有简单的方法来执行这个数据拆分?

标签: pythonscikit-learntrain-test-split

解决方案


您可以使用 groupby 函数将 2016-2017 年的所有数据分组为训练数据,将 2018-2020 年的数据分组为测试数据。或者,您也可以使用以下代码

df_train = df[df['year'].isin(2016,2017)] and df_test = df[df['year'].isin(2018,2019,2020)]

推荐阅读