设为首页收藏本站

EPS数据狗论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1364|回复: 1

MATLAB 一二三维矩阵之间转换

[复制链接]

18

主题

107

金钱

180

积分

入门用户

发表于 2019-10-9 15:46:50 | 显示全部楼层 |阅读模式

低维转高维
  使用reshape函数,执行如下操作:
  1. %% 维度转换
  2. A=1:12;

  3. % 一维转二维
  4. B2=reshape(A,[6,2])
  5. >>B2 =
  6.      1     7
  7.      2     8
  8.      3     9
  9.      4    10
  10.      5    11
  11.      6    12

  12. % 一维转三维
  13. B3=reshape(A,[2,2,3])
  14. >>B3(:,:,1) =
  15.      1     3
  16.      2     4
  17.   B3(:,:,2) =
  18.      5     7
  19.      6     8
  20.   B3(:,:,3) =
  21.      9    11
  22.     10    12

  23. % 二维转三维
  24. C3=reshape(B2,[2,2,3])
  25. >>C3(:,:,1) =
  26.      1     3
  27.      2     4
  28.   C3(:,:,2) =
  29.      5     7
  30.      6     8
  31.   C3(:,:,3) =
  32.      9    11
  33.     10    12
复制代码



高维转低维
  1. % 三维转二维
  2. A=rand(3,3,3);
  3. A1 = A(:,:,2); % 3*3 二维
  4. A2 = A(:,2,:); % 3*1*3 三维
  5. A3 = A(2,:,:); % 1*3*3 三维
  6. % 将三维转为 81*81 二维
  7. A22 = reshape(A2,3,3);
  8. A32 = reshape(A3,3,3);

  9. % 三维转一维
  10. B1=reshape(A,1,[]);

  11. % 二维转一维
  12. C1=reshape(A22,1,[]);
复制代码

224

主题

2万

金钱

3万

积分

专家用户

发表于 2019-10-9 16:30:31 | 显示全部楼层
谢谢你的分享
大道无痕……
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

客服中心
关闭
在线时间:
周一~周五
8:30-17:30
QQ群:
653541906
联系电话:
010-85786021-8017
在线咨询
客服中心

意见反馈|网站地图|手机版|小黑屋|EPS数据狗论坛 ( 京ICP备09019565号-3 )   

Powered by BFIT! X3.4

© 2008-2028 BFIT Inc.

快速回复 返回顶部 返回列表