Как я могу отобразить различные типы вывода в Matix в Matlab?
Пожалуйста, учтите, что у меня есть разные типы вывода в каждой итерации, как я могу показать их все в матрице или в таблице? Мне нужно иметь ярлык для каждого столбца и быть доступным, когда он мне нужен для вызова, сравнения или т. Д.
например вывод итераций: myfilename =
file35.txt
a_Count =
3
PPS_Count =
16
PPP_Count =
8
эмо =
'trust'
x = 1, например, выходные данные итерации 2: myfilename =
file36.txt
a_Count =
5
PPS_Count =
10
PPP_Count =
8
эмо =
'anger'
x = 0, например, выходные данные итерации 3: myfilename =
file37.txt
a_Count =
6
PPS_Count =
32
PPP_Count =
8
эмо =
'trust'
х = 0 спасибо заранее.
1 ответ
Вот учебник по созданию массива структуры и документации для структуры.
В вашем случае я бы сначала создал пустую структуру, а затем перебрал файлы:
data_struct = struct('a_Count',{},'PPS_Count',{},'PPP_Count',{},'emo',{},'x',{});
numfiles = 1; % just for testing purposes
for findex = 1:numfiles
% Code to read in file data goes here. Replace from here to next comment.
new_a_Count = 3;
new_PPS_Count = 16;
new_PPP_Count = 8;
new_emo = 'trust';
new_x = 1;
% Replace down to here populating variables:
% new_a_Count, new_PPS_Count, new_PPP_Count, new_emo, new_x
data_struct(findex).a_Count = new_a_Count;
data_struct(findex).PPS_Count = new_PPS_Count;
data_struct(findex).PPP_Count = new_PPP_Count;
data_struct(findex).emo = new_emo;
data_struct(findex).x = new_x;
end;
% display all values in data_struct(1):
disp("data_struct(1) = ");
disp(data_struct(1));
disp("\n");
% display just the first field "a_Count"
disp("data_struct(1).a_Count = ");
disp(data_struct(1).a_Count);
Обратите внимание, что вы можете вызывать эти новые переменные как угодно, включая те же имена, что и поля struct. Вот вывод, который вы должны получить при запуске этого:
data_struct (1) =
{
PPP_Count = 8
PPS_Count = 16
a_Count = 3
emo = trust
x = 1
}
data_struct(1).a_Count =
3