passing a list of variables instead of the variables themselves

3 views (last 30 days)
Hello all,
I currently call the splitapply function as follows:
output = splitapply(@(DataFilename, Temperature, R504, CPW, Signal) {table(DataFilename, Temperature, R504, CPW, Signal)}, T1, G)
I also have the following variable:
D = {'DataFilename' 'Temperature' 'R504' 'CPW' 'Signal'}
I would like to call the same splitapply function, using the D variable instead of explicitly indicting the individual DataFilename, Temperature, R504, CPW, Signal names.
Something like this (which, unfortunatelly does not work):
output = splitapply(@(D{:}) {table(D{:})}, T1, G)
How could it be done correctly?
Regards,
Cristian

Accepted Answer

Stephen23
Stephen23 on 2 Sep 2025
Edited: Stephen23 on 2 Sep 2025
Something like this:
D = {'DataFilename','Temperature','R504','CPW','Signal'};
F = @(varargin) {table(varargin{:}, VariableNames=D)};
output = splitapply(F, T1, G)

More Answers (0)

Products


Release

R2024b

Community Treasure Hunt

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

Start Hunting!