How to make a reference to multiple subelements of a cell without for loop (to create a plot)

2 views (last 30 days)
lets say I have a axb cell , each cell contains a 1xn double I want to make a plot like this plot({1,:}(1,end)) , i.e. for the first row of this cell I want to plot each cells last datapoint. I know this syntax doesn't work for cells, and it gives me the error "Incorrect cell or structure reference involving "end". Most likely cause is a reference to multiple elements of a cell or structure followed by additional subscript or structure references."
But how would you do this seemingly simple task?

Accepted Answer

José-Luis
José-Luis on 6 Nov 2012
your_vals = cellfun(@(x) x(end),your_cell)

More Answers (1)

Harshit
Harshit on 6 Nov 2012
Hi Felix, You have to use cell2mat. It converts your code to matrix. You have knowledge about n so pick up every nth element. It can be done easily.
  1 Comment
Felix
Felix on 6 Nov 2012
Edited: Felix on 6 Nov 2012
Unfortunately the size of n is different in every cell, thats why I wanted to use "end". Therefore cell2mat gives an error because the whole cell does not form a rectangle.

Sign in to comment.

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!