Filter löschen
Filter löschen

xlswrite multidimensional array in one sheet.

2 Ansichten (letzte 30 Tage)
HN
HN am 5 Jun. 2020
Beantwortet: HN am 5 Jun. 2020
I tried to export 6 x 6 x 1000 matrix from matlab to exel. However, the xlswrite overwrite it.
I used the following loop to resolve the issue
for j=1: length(Matrix,3)
xlswrite('xlsName.xls',Matrix(:.:,j),j)
end
But, it print the new data to the new sheet and it is not what I wanted.
Any help is appreciated!.
Thanks

Akzeptierte Antwort

HN
HN am 5 Jun. 2020
This works, in any case if someone need it
T=matrix ;
for j=1:length(matrix)
T(8*(j-1)+[1,dim(matrix)],:)=matrix(:,:,j)
end
xlswrite('filename',T,'sheetname','B2')

Weitere Antworten (1)

Ameer Hamza
Ameer Hamza am 5 Jun. 2020
Bearbeitet: Ameer Hamza am 5 Jun. 2020
First convert the data to a 2D matrix
M = rand(6, 6, 100);
M_new = reshape(permute(M, [2 1 3]), 6, []).';
and then you can use xlswrite().
writematrix() can also handle multidimensional arrays.
  1 Kommentar
HN
HN am 5 Jun. 2020
Bearbeitet: HN am 5 Jun. 2020
Thank you Hamza. But this is still not printing each matrix in the same page. What I wanted to see was all results in one page.
Thank you

Melden Sie sich an, um zu kommentieren.

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!

Translated by