如何在工作区中创建数据

时间:2013-03-06 15:22:17

标签: matlab

如何创建如下图所示的数据:

m1 with 6x6 cell

图1:具有6x6细胞的m1

After double click into m1, it shows the figure 2, assume all the zero in this picture is<code><6x63 cell></code>

图2:双击进入m1后,显示图2,假设该图片中的所有零都是<6x63 cell>

Double click m1{1,2} as shown in figure 3, each contains <code><4x4 double></code>

图3:双击m1 {1,2},如图3所示,每个包含<4x4 double>

enter image description here

我想在每个<4x4 double>中加0,如图4所示,是否有任何建议来创建这些数据?

1 个答案:

答案 0 :(得分:0)

首先阅读一些documentation怎么样?

此外,num2cell可以提供帮助。首先,您可以构造一个大的零矩阵,在您的情况下:

A = zeros([6,63,4])

然后你可以把它改成一个单元格数组,只取前两个维度(图2)

C = num2cell(A,[1,2])

最后一步是制作图3,复制矩阵:

D = repmat(C,[6,6])

然后你只需删除对角线:

for ii = 1:6
    D(ii,ii) = 0

PS:代码未经测试