Как создать новое поле внутри структуры, используя MATLAB? - PullRequest
0 голосов
/ 04 июля 2018

У меня есть 1 структура (имя структуры "Patient_1") struct patient_1

состоит из 1 ячейки (имя ячейки "A1") cell A1

внутри ячейки A1 есть значения 36x1, которые все являются структурой. patient_1.A1

внутри Patient_1.A1, там 2 поля, как на скриншоте ниже patient_1.A1{1, 1}

У меня вопрос, как создать новое поле внутри структуры 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 в коде - это просто строка метки, которую я хочу присвоить полю.

Таким образом, в результате каждая структура должна иметь новое поле, подобное этому: new field on the struct

Я понял, что новое поле уже удалось создать в структуре, но в 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);

это скриншот ошибки: error

В зависимости от проблемы, кто-нибудь может помочь мне решить эту проблему?

Спасибо

...