如何将清理的文本数据拆分为训练数据集和测试数据集(随机采样除外)



我已经使用"count_raw_id"列清理并删除了重复的文本数据,该列表示映射到一个清理 id 的原始 id 的数量 干净的 id 表示它是唯一的,并且有一些映射到它的原始 ID 现在我不想随机拆分清理的文本数据("clean_df"( 我需要一些基于标准的采样来从大约 2k 行的整个清理文件中创建两个数据集,一个用于训练模型,一个用于测试模型

我不想使用 sklearn 的train_test_split来拆分我的数据,因为它会随机拆分我的数据。我想要一些方法来查询我的数据,以便我可以使用其他一些采样技术,我也不能使用分层采样,因为我没有这些记录的实际标签

import pandas as pd
data = {'clean_id': [1,2,3,4],
'all_terms': [['activation', 'brand', 'admin', 'sale', 'commission', 
'administration', 'assistant', 'manager'],
['activation', 'brand', 'group', 'commission', 'mktg', 
'marketing', 'manager'],
['activation', 'brand', 'info', 'specialist', 'service', 
'manager', 'customer'],
['activation', 'brand', 'lead', 'greece', 'commission', 
'mktg', 'mgr', 'marketing']],
'count_raw_id': [8,2,4,5]}
clean_df = pd.DataFrame(data)
len(clean_df)
#output : 2150

K-Folds 交叉验证器应该会有所帮助。

它提供训练/测试索引以拆分训练/测试集中的数据。将数据集拆分为 k 个连续折叠(默认情况下不进行随机排序(。 然后每个折叠使用一次作为验证,而剩余的 k - 1 个折叠形成训练集。 https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.KFold.html

或者,您可以创建自己的逻辑来获取示例。 你的意思是什么查询?

最新更新