Concatenating multiple tables in a cell array
28 views (last 30 days)
Show older comments
Daniel Abraham
on 19 Jul 2021
Commented: Daniel Abraham
on 27 Jul 2021
Hello Everyone, I have a cell array with hundreds of tables in it, It's a 1165x1 cell array. The first 499 are empty cells but the rest have tables in them. from T{500} to T{end}
Most of the tables are 20x153 tables but some of them have different amount of columns (I have identified about 10 out of the 500) which have columns ranging from 130 to 157 columns. Is there a way I could concatenate vertically all the tables in the cell array with 20x153 dimensions ignoring these outliers?
Thank you.
2 Comments
Walter Roberson
on 19 Jul 2021
The entries that have fewer than 153 columns: you want to ignore those entries completely, right?
The entries that have more than 153 columns: do you want to ignore those entries completely, or do you want the first 153 columns of them to be used?
Accepted Answer
Walter Roberson
on 19 Jul 2021
mask = cellfun(@(c) size(c,2) == 153, T);
Tfull = vertcat(T{mask});
8 Comments
Walter Roberson
on 27 Jul 2021
That code does not download from OneDrive to local disk, but if possible you would really rather read from local disk than from OneDrive. The performance loss for reading from OneDrive can be substantial. Even just starting by copying the files to local drive can improve performance a lot.
More Answers (0)
See Also
Categories
Find more on Large Files and Big Data in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!