Help with a for loop

2 visualizaciones (últimos 30 días)
Marc Elmeua
Marc Elmeua el 7 de Sept. de 2020
Respondida: Mohammad Sami el 7 de Sept. de 2020
Dear comunity,
I am using a COM interface to pull data from a data collection software. Problem is it pulls channel by channel and I have 80 channels per subject. So I am trying to pull it with a for loop as follows:
for i = 1:c %'c' is the number of channels
SR = h.invoke('GetPerChannelSampleRate',i); %gives sample rates for each channel
ch = h.invoke('GetChannelName',i) %gives names for each channel
x = h.invoke('ReadData', i, xmin, xmax); %gives signal of each channel
collated(i,:) = x; %collates all channels into an array
end
'collated' will nicely (but slowly) place each 'x' in consecutive rows. 'SR' is a 1x1 double and 'ch' a char.
Now I am struggling to get the loop to create a table with ch headers and SR values.
Any thoughts?
Thank you.
  1 comentario
Rik
Rik el 7 de Sept. de 2020
If you want a table, have you read the documentation for how to create a table?

Iniciar sesión para comentar.

Respuesta aceptada

Mohammad Sami
Mohammad Sami el 7 de Sept. de 2020
Since you have an array you can use array2table function.
In your for loop change ch to a cell array.
ch{i} = h.invoke('GetChannelName',i);
Then you can create the table with variable names in ch variable.
collated = array2table(collated,'VariableNames',ch);

Más respuestas (0)

Categorías

Más información sobre Data Type Conversion en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by