matlab二维、三维矩阵转换、排序、转置等问题

1、matlab二维转换为三维矩阵
这里用到reshape函数
格式为AA1=reshape(A1,[行,列,页])
如下所示

A1=[2	2	2	2	2.5	2.5	2.5	2.5	1.8	1.8	1.8	1.8	2.2	2.2	2.2	2.2
2	2	2	2	1.8	1.8	1.8	1.8	2.1	2.1	2.1	2.1	2	2	2	2
4.5	5	5.5	6	6	6.5	7	7.5	5.5	6	6.5	7	4	4.5	5	5.5
0.6	0.7	0.7	0.8	0.2	0.3	0.3	0.4	0.6	0.7	0.7	0.8	0.4	0.5	0.6	0.6]
AA1=reshape(A1,[4,4,4])   %转化为3维矩阵

运行后得到:
AA1(:,:,1) =

    2.0000    2.0000    2.0000    2.0000
    2.0000    2.0000    2.0000    2.0000
    4.5000    5.0000    5.5000    6.0000
    0.6000    0.7000    0.7000    0.8000


AA1(:,:,2) =

    2.5000    2.5000    2.5000    2.5000
    1.8000    1.8000    1.8000    1.8000
    6.0000    6.5000    7.0000    7.5000
    0.2000    0.3000    0.3000    0.4000


AA1(:,:,3) =

    1.8000    1.8000    1.8000    1.8000
    2.1000    2.1000    2.1000    2.1000
    5.5000    6.0000    6.5000    7.0000
    0.6000    0.7000    0.7000    0.8000


AA1(:,:,4) =

    2.2000    2.2000    2.2000    2.2000
    2.0000    2.0000    2.0000    2.0000
    4.0000    4.5000    5.0000    5.5000
    0.4000    0.5000    0.6000    0.6000

2.三维矩阵转换为二维矩阵
这个转换比较简单,也是用reshape函数

clear;clc;
A1=[2	2	2	2	2.5	2.5	2.5	2.5	1.8	1.8	1.8	1.8	2.2	2.2	2.2	2.2
2	2	2	2	1.8	1.8	1.8	1.8	2.1	2.1	2.1	2.1	2	2	2	2
4.5	5	5.5	6	6	6.5	7	7.5	5.5	6	6.5	7	4	4.5	5	5.5
0.6	0.7	0.7	0.8	0.2	0.3	0.3	0.4	0.6	0.7	0.7	0.8	0.4	0.5	0.6	0.6]
AA1=reshape(A1,[4,4,4])   %转化为3维矩阵

A2=reshape(AA1,[4,16])  %3维矩阵转换为2维矩阵

3.三维矩阵排序
用到sort函数,按页排序
AA2=sort(AA1,3, ‘descend’) %3维矩阵排序

4.三维矩阵转置
用到permute函数,
AA3=permute(AA1,[2 1 3]) %1和2分别表示行与列,[2 1 3]表明行列转置,页不动。
运行结果:

AA3(:,:,1) =

    2.0000    2.0000    4.5000    0.6000
    2.0000    2.0000    5.0000    0.7000
    2.0000    2.0000    5.5000    0.7000
    2.0000    2.0000    6.0000    0.8000


AA3(:,:,2) =

    2.5000    1.8000    6.0000    0.2000
    2.5000    1.8000    6.5000    0.3000
    2.5000    1.8000    7.0000    0.3000
    2.5000    1.8000    7.5000    0.4000


AA3(:,:,3) =

    1.8000    2.1000    5.5000    0.6000
    1.8000    2.1000    6.0000    0.7000
    1.8000    2.1000    6.5000    0.7000
    1.8000    2.1000    7.0000    0.8000


AA3(:,:,4) =

    2.2000    2.0000    4.0000    0.4000
    2.2000    2.0000    4.5000    0.5000
    2.2000    2.0000    5.0000    0.6000
    2.2000    2.0000    5.5000    0.6000
发布了12 篇原创文章 · 获赞 0 · 访问量 492

猜你喜欢

转载自blog.csdn.net/wjyxld/article/details/104830903
今日推荐