Help with a for loop
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Marc Elmeua
il 7 Set 2020
Risposto: Mohammad Sami
il 7 Set 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 Commento
Risposta accettata
Mohammad Sami
il 7 Set 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);
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Data Type Conversion in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!