Converting all arrays inside a cell to tables

2 views (last 30 days)
Hello
I have a 40 x 32 cell named C. Each element in C has a dimension of 1 x 1 x 336. I want to keep C as a cell but converting every array in it to a table. In fact, I don't want first and second dimension (1 x 1), I just need 336 values. I want to have these values as a column. I attach C. I would like the output is a cell (40 x 32) with 336 x 1 table inside each cell.
Thank you so much.

Accepted Answer

JESUS DAVID ARIZA ROYETH
JESUS DAVID ARIZA ROYETH on 9 Feb 2020
newC is 40x32, each cell is a table 336x1 :
newC = cellfun(@(x) table(x(:)), C, 'uniformoutput', false)

More Answers (1)

TADA
TADA on 9 Feb 2020
c = repmat({(1:10)'}, 3,3)
c =
3×3 cell array
Columns 1 through 2
{10×1 double} {10×1 double}
{10×1 double} {10×1 double}
{10×1 double} {10×1 double}
Column 3
{10×1 double}
{10×1 double}
{10×1 double}
c = cellfun(@table, c, 'uniformoutput', false)
c =
3×3 cell array
Columns 1 through 2
{10×1 table} {10×1 table}
{10×1 table} {10×1 table}
{10×1 table} {10×1 table}
Column 3
{10×1 table}
{10×1 table}
{10×1 table}
  1 Comment
BN
BN on 9 Feb 2020
Dear TADA,
Thank you for your answer. I use this:
C = cellfun(@table, C, 'uniformoutput', false)
But unfortunately, it gained me 1 x 1 tables, and I missed 336 values of each cell.
Capture.JPG
When I click on one of them:
Capture2.JPG
I don't know what should I do, I need 336x1 tables in a cell.

Sign in to comment.

Categories

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

Products


Release

R2018b

Community Treasure Hunt

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

Start Hunting!