【发布时间】:2019-10-15 23:47:27
【问题描述】:
我的数据框包含 442 亿行。我想将它分成 3 组(训练、测试和验证)。这样就没有点重叠了。
我已经完成了(第一个过程)-
train, valid, test = np.split(df.sample(frac=1), [int(.8*len(df)), int(.95*len(df))])
检查是否存在任何值 -
len(valid[valid.id.isin(test.id)])
len(train[train.id.isin(test.id)])
第二个过程-
train = df[(np.random.rand(len(df)) < 0.8)]
valid = df[(np.random.rand(len(df)) > 0.8) & (np.random.rand(len(df)) < 0.95)]
test = df[(np.random.rand(len(df)) > 0.95) & (np.random.rand(len(df)) < 1)]
但据我了解,以上两种方法并不完美。谁能帮帮我
【问题讨论】:
标签: python scikit-learn