xlswrite multidimensional array in one sheet.

3 次查看(过去 30 天)
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

采纳的回答

HN
HN 2020-6-5
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')

更多回答(1 个)

Ameer Hamza
Ameer Hamza 2020-6-5
编辑:Ameer Hamza 2020-6-5
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 个评论
HN
HN 2020-6-5
编辑:HN 2020-6-5
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

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Cell Arrays 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by