在Matlab中生成数据集

在Matlab中生成数据集,matlab,dataset,generator,feature-selection,synthetic,Matlab,Dataset,Generator,Feature Selection,Synthetic,我想问一下如何在Matlab中生成数据集。我需要它来测试高维数据上的特征选择算法。。。数据集应该是综合的、多变量的,并且包含相互作用的特征。 MONKS问题之类的合成数据集可在…上获得。。。。不幸的是,我不知道如何根据需要可视化/生成和修改数据。目标是运行一个检测交互特征的算法。 非常感谢您的友好回复。我不确定这是否是您想要的,但如果我需要这样做,我将首先生成匿名函数和通用变量名,我可以在数据集中随机应用它们 例如,您可以生成一个数据集: myData = rand(100,6); 并创建一些

我想问一下如何在Matlab中生成数据集。我需要它来测试高维数据上的特征选择算法。。。数据集应该是综合的、多变量的,并且包含相互作用的特征。 MONKS问题之类的合成数据集可在…上获得。。。。不幸的是,我不知道如何根据需要可视化/生成和修改数据。目标是运行一个检测交互特征的算法。
非常感谢您的友好回复。

我不确定这是否是您想要的,但如果我需要这样做,我将首先生成匿名函数和通用变量名,我可以在数据集中随机应用它们

例如,您可以生成一个数据集:

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))]