Matlab:使用变量制作dummys,但将变量名保留在数据集中

Matlab:使用变量制作dummys,但将变量名保留在数据集中,matlab,statistics,dataset,dummy-variable,Matlab,Statistics,Dataset,Dummy Variable,我在Matlab中有一个名为ds的数据集变量,用于回归 ds中的大多数变量都是分类的,它们有一定数量的固定值。我想将ds中的所有变量都转换为dummys,但保留名称 我会举一个例子: 变速可采用以下值:0、10、20、30、40。因此,我想从这里创建5个虚拟变量。我知道怎么做。但是我想让数据集将虚拟变量名设置为speed_0、speed_10、speed_20。。。 因为我的数据集包含很多分类变量,并且我无法手动输入所有变量的名称,所以有什么函数或东西可以帮我做到这一点吗 问候, 斯文我不确定你

我在Matlab中有一个名为ds的数据集变量,用于回归

ds中的大多数变量都是分类的,它们有一定数量的固定值。我想将ds中的所有变量都转换为dummys,但保留名称

我会举一个例子:

变速可采用以下值:0、10、20、30、40。因此,我想从这里创建5个虚拟变量。我知道怎么做。但是我想让数据集将虚拟变量名设置为speed_0、speed_10、speed_20。。。 因为我的数据集包含很多分类变量,并且我无法手动输入所有变量的名称,所以有什么函数或东西可以帮我做到这一点吗

问候,


斯文

我不确定你说的对不对。你想得到这样的东西吗

DummyVarNames = strcat('speed_',strtrim(cellstr(num2str([10:10:100]'))));

我不确定我是否理解正确。你想得到这样的东西吗

DummyVarNames = strcat('speed_',strtrim(cellstr(num2str([10:10:100]'))));

不确定这是否是您要找的,但看看genvarname:不确定这是否是您要找的,但看看genvarname:嗨,Ivea,是的,但如果可能的话,我希望自动完成,因为为100个不同的变量创建这些num2str向量对我来说也不太实际。@Ggwp1399:我不确定你是否正确,但你应该手头有你的值(例如,你想创建200个不同的虚拟变量名,对应于步长为2的数字1到400。因此:
DummyVarNames=strcat('speed_',strtrim(cellstr(num2str([1:2:400]))
所以,我不知道你所说的“实用”一词的确切含义。不,我有100个变量,所有变量都是“分类的”。每个变量都应该被拆分。所以变量1有6个不同的类别,变量2有10个类别等等。嗨,伊维娅,是的,但我想自动完成,如果可能的话,因为它也不太实用对于我来说,为100个不同的变量创建这些num2str向量是非常必要的。@Ggwp1399:我不确定您是否正确,但您应该手头有您的值(例如,您希望创建200个不同的伪变量名,对应于步长为2的数字1到400。因此:
DummyVarNames=strcat('speed',strtrim(cellstr(num2str([1:2:400]))
所以,我不知道你所说的“实用”一词的确切含义是什么?不,我有100个变量,都是“分类的”。每个变量都应该被拆分。所以变量1有6个不同的类别,变量2有10个类别等等。