- 数值矩阵转换为异质矩阵: num2cell 指令
-
1 %num2cell函数是将数值转化为单元矩阵,num2cell(5:9)等价于{5,6,7,8,9}。 2 num2cell 指令可将一数值阵列转换成异质阵列, 其使用语法为: 3 C = num2cell(A, dim) 4 其中 dim 是代表 「被切割」的维度,若不指定,则将每个元素视为异质阵列里面的一个 1×1 矩阵 5 将数值阵列转换成异质阵列(cont) 6 Ex:num2cell01.m 7 A = [1 2 3;4 5 6]; % 建立一个数值阵列 A 8 C = num2cell(A) % 将数值阵列 A 转成异质阵列 C 9 C = 10 [1] [2] [3] 11 [4] [5] [6] 12 将数值阵列转换成异质阵列(cont) 13 可以将上例数值阵列 A 中的每一直行, 转成异质阵列 D 的元素 14 Ex::num2cell02.m 15 A = [1 2 3;4 5 6]; % 建立的一个数值阵列 A 16 D = num2cell(A, 1) % 1 代表「以列切割」 17 D = 18 [2x1 double] [2x1 double] [2x1 double 19 将数值阵列转换成异质阵列(cont) 20 也可以将数值阵列 A 的每一横列, 转成异质阵列 E 的元素 21 Ex:num2cell03.m 22 A = [1 2 3;4 5 6]; % 建立的一个数值阵列 A 23 E = num2cell(A, 2) % 2 代表「以行切割」 24 E = 25 [1x3 double] 26 [1x3 double]
- 结构矩阵转换为异值矩阵:struct2cell
-
1 Ex:struct2cell01.m 2 student.name = 'Tim'; 3 student.age = 8; %student为一struct 4 sCell = struct2cell(student) 5 sCell = 6 'Tim' 7 [ 8]
- 异值矩阵转换为结构矩阵:deal 指令
1 Ex:deal01.m
2
3 S = struct('name',{'Tim','Annie'},'age', {8,5});
4
5 [sCell{1:length(S)}] = deal(S.name)
6
7 sCell = 'Tim '
8
9 'Annie'
10
11
12
13 Ex:deal02.m
14
15 S = struct('name',{'Tim','Annie','san'},'age', {8,5,7});
16
17 [sCell{1:length(S)}] = deal(S.name) %length(S)=3
18
19 sCell = 'Tim ' 'Annie' 'san'
- 关于异值矩阵的一些函数
1 cellplot(A)
2 以图形的方式显示异质阵列 A 的内部资料型态
3 celldisp(A)
4 显示异质阵列 A 各个构成元素的实际内容
5 reshape(A,m,n)
6 改变异质阵列 A 的维度成 m×n
7 cell(m,n)
8 预先配置一个维度为 m×n 的空矩阵
9 iscell(A)
10 测试变数 A 是否为异质阵列:
11 传回值 0,代表不是异质阵列
12 传回值 1,代表是异质阵列