在Patient_1.A1内部,有2个字段,例如下面的屏幕截图
我的问题是如何在结构Patient_1.A1 {1,1}中创建新字段?
此刻是我的代码:
% looping each struct and put each name of files as variable using
for i=1:l_files1
label1(i,1) = string(files1(i).name); % get name field
patient_1.A1{i,1}.name = label1(i,1);
end
代码上的[label1
只是我想在字段上分配的标签字符串。
我意识到新字段已经可以在结构上成功创建,但是在MATLAB上却出现了此错误:
Unable to perform assignment because dot indexing is not supported for variables of this type.
Error in Main (line 38)
patient_1.A1{i,1}.name = label1(i,1);
根据问题,有没有人可以帮助我解决这个问题?
在这种情况下,我们需要避免创建内部带有结构的单元格数组。而是创建一个结构数组。这个问题是patient_1.A1{6,1}
不是一个结构,而是一个单元格数组。
因此,只需将patient_1.A1
创建为结构,并立即获得结构内部的值。