Using cellfun for multidimensional cell

10 views (last 30 days)
I have a cell of this type:
200×3 cell array
[1×60000 double] [ -0.9365] [154.9924]
[1×60000 double] [ 10.8080] [297.1132]
[1×60000 double] [ 15.5680] [121.3598]
Etc.
I want to use the cusum function, where the second column and third columns are inputs. For a single row this would be:
cusum(this_cell{j}, constant, constant, this_cell{j,2}, this_cell{j,3})
What would be syntax for using cellfun?

Accepted Answer

the cyclist
the cyclist on 19 Jun 2017
Edited: the cyclist on 19 Jun 2017
I don't have the Signal Processing Toolbox, so I can't access the cusum function. However, here is a generic example of using three inputs into cellfun, that you should be able to easily craft into your use case:
% The input data
A = {[1 2 3],4,5;
[6 7 8],9,10};
out = cellfun(@(x,y,z)(x.*y.*z),A(:,1),A(:,2),A(:,3),'UniformOutput',false)
I think your equivalent is going to be something like
cellfun(@(x,y,z)(cusum(x,constant1,constant2,y,z)),A(:,1),A(:,2),A(:,3),'UniformOutput',false)

More Answers (0)

Categories

Find more on Cell Arrays in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!