python-3.x - 非随机地将数据拆分为训练和测试

标签 python-3.x machine-learning scikit-learn cross-validation train-test-split

我想将数据集分成两部分,75% 用于训练,25% 用于测试。有两个类。 我有另一个数据集,其中只有一个类的一个实例,其余所有实例都属于第二类。 所以我不想随机分割。我想确保,如果一个类只有一个实例,那么它应该处于训练中。任何想法如何去做。我知道我必须选择索引,但我不知道如何选择。 现在,我正在这样做,选择前 75% 作为训练,剩下的作为测试

train_data = df[:int((len(df)+1)*.75)] 
test_data = df[int(len(df)*.75+1):] 

最佳答案

这可能会有所帮助:GroupKFold。在那里找到 sklearn 文档:

http://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GroupKFold.html

关于python-3.x - 非随机地将数据拆分为训练和测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49564050/

相关文章:

python - 在 AJAX 请求中包含 Bottle 模板

python - 将嵌套在两个字典下的列表转换为 DataFrame

python-3.x - 固定时间表的自适应学习率

Python:计算 Pandas 中两列之间的 tf-idf 余弦相似度时出现 MemoryError

python - 具有分类和连续属性的多类多输出分类,无需在 python 中进行编码

python - 如何将 sklearn "LinearRegression"与列表一起使用?

c++ - OpenCV 如何确定具有不同参数的函数的 python 绑定(bind)?

python - url django 中渲染的 slugs 不正确

r - 基准实验中使用的学习器的特征重要性 - MLR

machine-learning - 如何将未知大小的时间步输入到 TimeDistributed Keras 层