我有一个包含133个样本的数据集(133行和2列(属性))。我需要将从第1个样本开始的每第五个样本(即第1个、第6个、第11个、第16个等)分配为测试数据集,其余样本分配为训练数据集。我该如何操作?
回答:
在Matlab中使用冒号运算符:
testset = dataset(1:5:end,:)trainingset = setdiff(dataset, testset, 'rows')
你也可以不使用setdiff
来实现:
testset = dataset(1:5:end,:)trainingset = dataset;trainingset(1:5:end, :) = [];