如何在matlab中生成2*2*3的三维数组?

来源:百度知道 编辑:UC知道 时间:2024/05/26 09:25:44
如题,我输入rand(2,2,3)命令出现如下结果,但是我想(:,:,2)中的元素小于(:,:,1)中的对应元素,而(:,:,3)中的对应元素小于(:,:,2)中的对应元素。期待高手指点一下,谢谢!
ans(:,:,1) =

0.5328 0.9390
0.3507 0.8759

ans(:,:,2) =

0.5502 0.5870
0.6225 0.2077

ans(:,:,3) =

0.3012 0.2305
0.4709 0.8443

matlab中三维数组的生成方式跟二维数组差不多,只不过多了一个参数而已。

下面通过举例来具体说明如何产生及使用三维数组。
A = zeros(2, 2, 3); % 生成一个2*2*3的三维数组

显示出来的结构如下:
A(:, :, 1)= % 一个2*2的二维数组
0 0
0 0
A(:, :, 2)= % 一个2*2的二维数组
0 0
0 0
A(:, :, 3)= % 一个2*2的二维数组
0 0
0 0

a=rand(2,2,3)
sort(a,3,'descend')

a(:,:,1) =

0.4508 0.8928
0.7159 0.2731

a(:,:,2) =

0.2548 0.2324
0.8656 0.8049

a(:,:,3) =

0.9084 0.2393
0.2319 0.0498

整理后:
ans(:,:,1) =

0.9084 0.8928
0.8656 0.8049

ans(:,:,2) =

0.4508 0.2393
0.7159 0.2731

ans(:,:,3) =

0.2548 0.2324
0.2319 0.0498