在matlab的variable editor(就是matlab主界面中显示数据的地方)中如何显示完全的cell

急问!!!请高手帮忙,请大家帮助解答!
我在matlab中计算了很长的一个元胞数组,但在matlab主界面中双击该计算出的数据后,显示如下:
<1*17 cell>
<1*18 cell>
.........
由于行数很多,不可能逐个打开显示看,而是想拷贝到excel中进行再分析,可是拷贝过去,和在matlab中显示的一样,也是<1*17 cell>的样子。
该怎么让matlab能在variable editor显示完成的cell数组呢?显示成如下的样子即可:
1 2 [3,4 5] [3,2] [] 3
.........
谢谢

一、若采用你的方法,Matlab的元胞数组是以字符的形式复制,而且数组较大时,不会显示具体内容,如下图所示;

二、最终的目的是写入到Excel表中,可以通过xlswrite函数实现该功能,以下是示例代码:

%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%% 将元胞数组写入到Excel表中:假设元胞都是数组或空数组

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%% 1/举例子数据

a=cell(4,1);

a{1,1}=rand(2,1);

a{2,1}=3*rand(2,2);

a{3,1}=3*rand(3,2);

a{4,1}=3*rand(3,4);

%%%% 2/使用函数直接写入到Excel表中

[NumRow,NumCol]=size(a);

StartRow=1;

for i1=1:NumRow

    for i2=1:NumCol

        RowStr=int2str(StartRow);

        MyStr=sprintf('这是第%d行,第%d列的元胞数据',i1,i2);

        %%%% 标签

        xlswrite('c:\test.xlsx',{MyStr},1,['A',RowStr]);

        %%%% 具体数组

        xlswrite('c:\test.xlsx',a{i1,i2},1,['B',RowStr]);

        StartRow=StartRow+size(a{i1,i2},1)+1;

    end

end

温馨提示:答案为网友推荐,仅供参考
相似回答