如何根据从数据中提取的单词和数字在 MATLAB 中设置所需的名称?
How to set a desired name in MATLAB from words and numbers extracted from data?
我想从我的数据集的不同列中提取三个数字,并将这些数字和一些单词一起设置为我在工作区中的变量名称,然后为该变量分配一个矩阵。例如:
data=dataset{:,:,5};
FID=data(1,14);
VID=data(1,1);
PID=data(1,15)
这里我从数据集中的矩阵的不同列中提取了三个数字:
FID=4 , VID=8 , PID=12
现在,我想使用这三个数字在工作区中创建一个变量,除了三个单词之间有下划线,例如:A4_B8_C12
然后给这个变量赋一个矩阵:
A4_B8_C12=dataset{:,:,5};
由于我的数据集是一个元胞数组,包含 2169 个矩阵,我正在编写代码以从所需矩阵中提取三个数字,并将它们与所需单词一起使用以创建多个矩阵。
我该怎么做?
当您有元胞数组、结构体和数组时,这不是一个好的做法。这违背了使用数组的理念。但是无论如何,如果你想继续这种编程方式,你可以使用以下代码:
for i=1:5
data=dataset{:,:,i};
FID=data(1,14);
VID=data(1,1);
PID=data(1,15);
eval(sprintf('A%d_B%d_C%d=data;',FID,VID,CID));
end
使用evalf是一种可以自修改代码的编程方式
我想从我的数据集的不同列中提取三个数字,并将这些数字和一些单词一起设置为我在工作区中的变量名称,然后为该变量分配一个矩阵。例如:
data=dataset{:,:,5};
FID=data(1,14);
VID=data(1,1);
PID=data(1,15)
这里我从数据集中的矩阵的不同列中提取了三个数字: FID=4 , VID=8 , PID=12
现在,我想使用这三个数字在工作区中创建一个变量,除了三个单词之间有下划线,例如:A4_B8_C12
然后给这个变量赋一个矩阵:
A4_B8_C12=dataset{:,:,5};
由于我的数据集是一个元胞数组,包含 2169 个矩阵,我正在编写代码以从所需矩阵中提取三个数字,并将它们与所需单词一起使用以创建多个矩阵。
我该怎么做?
当您有元胞数组、结构体和数组时,这不是一个好的做法。这违背了使用数组的理念。但是无论如何,如果你想继续这种编程方式,你可以使用以下代码:
for i=1:5
data=dataset{:,:,i};
FID=data(1,14);
VID=data(1,1);
PID=data(1,15);
eval(sprintf('A%d_B%d_C%d=data;',FID,VID,CID));
end
使用evalf是一种可以自修改代码的编程方式