MATLAB Answers

Define variable inputs for 'merge' function

25 views (last 30 days)
Goryn on 28 Mar 2013
could you please help me with the next problem.
I'm trying to merge N financial time series objects by function newfts = merge(fts1, fts2, ..., ftsx). How may I define a variable inputs for that? Because, when I have 2 time seriesobjects it becomes:
newfts = merge(fts1, ft2);
When I have 3:
newfts = merge(fts1, fts2, fts3);
How to avoid of examination of all posible options?
ATTENTION! Please, don't suggest to use a cell array
and use
function newfts = merge(v)
It doesn't work.


Sign in to comment.

Accepted Answer

Jan on 28 Mar 2013
Edited: Jan on 28 Mar 2013
It is strange, that you do not want us to post the best solution by using a cell array. Unfortunately you only claim, that "it does not work", but do not mention any details. Of course it works, when you add a little "{:}":
v = {fts1,fts2,...,ftsn}
newfts = merge(v{:})
Then merge() gets a comma-separated list exactly as if you call it as:
newfts = mergs(fts1, fts2, fts3); % Or how many elements v contains
In addition using a cell is a much better idea than naming the variables "fts1, fts2, ...". Using fts{k} would be more convenient, see

  1 Comment

Goryn on 1 Apr 2013
Thank you, Jan. Great answer.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by