在Matlab中生成数据集
我想问一下如何在Matlab中生成数据集。我需要它来测试高维数据上的特征选择算法。。。数据集应该是综合的、多变量的,并且包含相互作用的特征。 MONKS问题之类的合成数据集可在…上获得。。。。不幸的是,我不知道如何根据需要可视化/生成和修改数据。目标是运行一个检测交互特征的算法。在Matlab中生成数据集,matlab,dataset,generator,feature-selection,synthetic,Matlab,Dataset,Generator,Feature Selection,Synthetic,我想问一下如何在Matlab中生成数据集。我需要它来测试高维数据上的特征选择算法。。。数据集应该是综合的、多变量的,并且包含相互作用的特征。 MONKS问题之类的合成数据集可在…上获得。。。。不幸的是,我不知道如何根据需要可视化/生成和修改数据。目标是运行一个检测交互特征的算法。 非常感谢您的友好回复。我不确定这是否是您想要的,但如果我需要这样做,我将首先生成匿名函数和通用变量名,我可以在数据集中随机应用它们 例如,您可以生成一个数据集: myData = rand(100,6); 并创建一些
非常感谢您的友好回复。我不确定这是否是您想要的,但如果我需要这样做,我将首先生成匿名函数和通用变量名,我可以在数据集中随机应用它们 例如,您可以生成一个数据集:
myData = rand(100,6);
并创建一些包含相互依赖关系的函数
interact = @(x) x*x;
interact2 = @(x) x*(x-1);
然后创建一个随机逻辑分布
y=圆形(兰特(100,1));%(100行随机0或1)
浏览数据集并仅在y为真的行上使用Interactive函数
数据集(y==1,:)=交互(数据集(y==1,:)
如果需要,对您定义的其他交互函数重复上述步骤。这样做可能会很有用,这样您就可以避免行依赖关系(见下文),从而可以按顺序生成一些数据集,即。
数据集2(y==1,:)=Interactic2(数据集(y==1,:))
变量也可以采用类似的方法(在示例集中,它显示了一些分类变量)
随机选择要重复的泛型变量
applyvar=圆形(兰特(1,1)*100);
selectedVariable=listofvariables(applyvar)
用重复变量替换变量列表的索引
listofvariables(y==1)=selectedVariable
按照您选择的顺序将数据集放在一起
[cellstr(num2str(dataset(:,1))) listofvariables cellstr(num2str(dataset(:,2)) cellstr(num2str(dataset2(:,2))]
[cellstr(num2str(dataset(:,1))) listofvariables cellstr(num2str(dataset(:,2)) cellstr(num2str(dataset2(:,2))]