Как я могу отобразить различные типы вывода в 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
Другие вопросы по тегам