Exporting cell arrays with different sizes to excel
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
monika roopak
am 3 Okt. 2018
Kommentiert: Bob Thompson
am 4 Okt. 2018
I have cell array of size 774 X1 , and each array has another of one row and varying number of column. so my question is how i can export data from this cell array to a excel file.
0 Kommentare
Akzeptierte Antwort
Bob Thompson
am 3 Okt. 2018
What kind of data is contained within the inner cells? If there are more arrays I think you will likely have some problems. Here is what I thought of for a first attempt.
Cell = % Your cell with data
[row,col] = size(Cell);
for k = 1:row;
lengths(row) = size(Cell{k},2);
end
col = max(lengths)
Block = cell(row,col);
for k = 1:row;
Block{k,1:size(Cell{k},2)} = Cell{k};
end
Theoretically, this will "bump" the contents of each cell up a level, so that you have a new cell matrix that doesn't contain further matrices, and you can print it to a 2D excel range.
You might also look at cell2mat for cell arrays that contain doubles.
2 Kommentare
Bob Thompson
am 4 Okt. 2018
One mistake I made (not that it's causing the error) is that it should be lengths(k) not lengths(row).
Since it's just arrays of doubles (numbers) you can use this:
[row,col] = size(CELL);
for k = 1:row;
lengths(k) = size(CELL{k},2);
end
col = max(lengths)
Block = nan(row,col);
for k = 1:row;
Block(k,1:size(CELL{k},2)) = CELL{k};
end
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Cell Arrays finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!