在python中是否有一个简单的函数可以从数据集中排除训练集?

在python中是否有一个简单的函数可以从数据集中排除训练集?,python,numpy,Python,Numpy,我在用python拆分数据集时遇到了一个问题 若我得到了数据集的一个子集作为训练集,python中是否有一些函数可以从数据集中排除训练集并直接获得数据集的其余部分? 就像: testing set = numpy.exclude(dataset , trainingset) 例如,数据集中有10行,我已经将2,4,7,9行作为训练集,所以如何轻松获取数据集中的其余部分。 详细地说,这些是我的训练数据集 for i in range(0,5): Test_data = dataset[rat

我在用python拆分数据集时遇到了一个问题 若我得到了数据集的一个子集作为训练集,python中是否有一些函数可以从数据集中排除训练集并直接获得数据集的其余部分? 就像:

testing set = numpy.exclude(dataset , trainingset)
例如,数据集中有10行,我已经将2,4,7,9行作为训练集,所以如何轻松获取数据集中的其余部分。 详细地说,这些是我的训练数据集

for i in range(0,5):
  Test_data = dataset[ratio*i:ratio*(i+1),:]
  Train_data = dataset[0:ratio*i&ratio*(i+1):-1,:] 

我的代码不起作用,因为没有&defination

如果您已经知道训练集行的索引,您可以排除它们以获得其余行的索引:

training_rows_ix = [2,4,7,9]
non_training_rows = [i for i in dataset.index if i not in training_rows_ix]
test_set = dataset.loc[non_training_rows]
或使用集合操作代替列表理解:

non_training_rows = sorted(set(dataset.index) - set(training_rows_ix))

另外,要获得将数据集拆分为测试序列的更可靠的解决方案,请查看scikit learn的

能否再次查看我的问题,也许我刚才回答的问题更难。变量和函数名称应遵循带有下划线的
小写形式。“训练集”和“数据集”有什么特别之处?就我所知,问题应该是“如何采样/分割NumPy数组”。