Programmatically change function input

1 Ansicht (letzte 30 Tage)
Alex Browning
Alex Browning am 6 Jan. 2021
Kommentiert: Alex Browning am 6 Jan. 2021
Hi, I'm working on a function that will build a synchronized timetable based on a varying number of data streams. The function organizes that data into a cell array, and then feed those cells are fed into the synchronize function.
Here's a chunklet of the code:
for i=1:length(synccell)
catstring=sprintf('synccell{%u}',i);
fncstr=strcat(fncstr,catstring,',');
end
finalstr=strcat(fncstr,"'regular','next','TimeStep',seconds(.05))");
tt=synchronize(finalstr)
writetimetable(tt,'Synchronized.csv');
Obviously, this doesn't work because I can't just use a string as a function input.
What are my options here?

Akzeptierte Antwort

Stephen23
Stephen23 am 6 Jan. 2021
Bearbeitet: Stephen23 am 6 Jan. 2021
Using a character vector is entirely the wrong approach. The correct approach is to use a comma-separated list:
tt = synchronize(synccell{:},'regular','next','TimeStep',seconds(.05));
% ^^^^^^^^^^^ comma-separated list from cell array
  1 Kommentar
Alex Browning
Alex Browning am 6 Jan. 2021
I knew I was missing something obvious. This worked perfectly. Thank you.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Time Series Events finden Sie in Help Center und File Exchange

Produkte


Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by