How to pass name-value-pair arguments to templateTree() as a struct?

4 Ansichten (letzte 30 Tage)
Tobias
Tobias am 25 Aug. 2014
Bearbeitet: Sugar Daddy am 2 Jul. 2020
I am trying to group multiple name-value pair arguments and pass them to templateTree() as one. The usual call would be, e.g.:
templateTree('Surrogate','off','Prune','on','QEToler',1e-10)
I would like something like this:
opts = struct('Surrogate','off','Prune','on','QEToler',1e-10)
templateTree(opts)
If I try that the following error is shown:
Error using internal.stats.parseArgs (line 42)
Wrong number of arguments.
Error in classreg.learning.FitTemplate.make (line 38)
[usertype,~,modelArgs] = ...
Error in templateTree (line 120)
temp = classreg.learning.FitTemplate.make('Tree',varargin{:});
So if templateTree() cannot handle structs as input arguments, is there another way to achieve the same thing? Or is this somehow possible with structs?
Thanks!

Antworten (1)

Sugar Daddy
Sugar Daddy am 2 Jul. 2020
Bearbeitet: Sugar Daddy am 2 Jul. 2020

Daddy Views

T_T= templateTree('Surrogate','off','Prune','on','QEToler',1e-10);
opts = {'Surrogate','off','Prune','on','QEToler',1e-10};
T_T_O = templateTree(opts{:});
Now check if they are equal
assert(isequal(T_T_O,T_T))

Kategorien

Mehr zu Functions finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by