Disclaimer: This article is a blogger original article, follow the CC 4.0 BY-SA copyright agreement, reproduced, please attach the original source link and this statement.
Multidimensional Arrays
The general expression for the A (i, j, k ......), wherein, A is a multi-array name; i, j, k ...... a one-dimensional, two-dimensional, three-dimensional ...... subscript index value. Usually i said row, j column said, k said page.
Create a multidimensional array
- Direct assignment
A(:,:,1) = magic(3)
A(:,:,2) = vander([1 2 3])
A(:,:,3) = pascal(3)
>> practice
A =
8 1 6
3 5 7
4 9 2
A(:,:,1) =
8 1 6
3 5 7
4 9 2
A(:,:,2) =
1 1 1
4 2 1
9 3 1
A(:,:,1) =
8 1 6
3 5 7
4 9 2
A(:,:,2) =
1 1 1
4 2 1
9 3 1
A(:,:,3) =
1 1 1
1 2 3
1 3 6
- By generating a multidimensional function matrix
B = rand(4, 4, 3)
>> practice
B(:,:,1) =
0.8147 0.6324 0.9575 0.9572
0.9058 0.0975 0.9649 0.4854
0.1270 0.2785 0.1576 0.8003
0.9134 0.5469 0.9706 0.1419
B(:,:,2) =
0.4218 0.6557 0.6787 0.6555
0.9157 0.0357 0.7577 0.1712
0.7922 0.8491 0.7431 0.7060
0.9595 0.9340 0.3922 0.0318
B(:,:,3) =
0.2769 0.6948 0.4387 0.1869
0.0462 0.3171 0.3816 0.4898
0.0971 0.9502 0.7655 0.4456
0.8235 0.0344 0.7952 0.6463
A = [1 2; 3 4]
C = repmat(A,[3, 4, 3]) %把矩阵A复制成3*4,复制后再复制3页
>> practice
A =
1 2
3 4
C(:,:,1) =
1 2 1 2 1 2 1 2
3 4 3 4 3 4 3 4
1 2 1 2 1 2 1 2
3 4 3 4 3 4 3 4
1 2 1 2 1 2 1 2
3 4 3 4 3 4 3 4
C(:,:,2) =
1 2 1 2 1 2 1 2
3 4 3 4 3 4 3 4
1 2 1 2 1 2 1 2
3 4 3 4 3 4 3 4
1 2 1 2 1 2 1 2
3 4 3 4 3 4 3 4
C(:,:,3) =
1 2 1 2 1 2 1 2
3 4 3 4 3 4 3 4
1 2 1 2 1 2 1 2
3 4 3 4 3 4 3 4
1 2 1 2 1 2 1 2
3 4 3 4 3 4 3 4
A = magic(3)
B = ones(3)
C = eye(3)
D = cat(3,A,B,C)
>> practice
A =
8 1 6
3 5 7
4 9 2
B =
1 1 1
1 1 1
1 1 1
C =
1 0 0
0 1 0
0 0 1
D(:,:,1) =
8 1 6
3 5 7
4 9 2
D(:,:,2) =
1 1 1
1 1 1
1 1 1
D(:,:,3) =
1 0 0
0 1 0
0 0 1
Calculation of multidimensional arrays
B(:,:,1) = magic(3);
B(:,:,2) = ones(3);
B(:,:,3) = eye(3);
size(B)
sum(B) %数组求和
prod(B) %数组求乘积
>> practice
ans =
3 3 3
ans(:,:,1) =
15 15 15
ans(:,:,2) =
3 3 3
ans(:,:,3) =
1 1 1
ans(:,:,1) =
96 45 84
ans(:,:,2) =
1 1 1
ans(:,:,3) =
0 0 0