lzth.net
当前位置:首页 >> mAtlAB中怎样将一维数组转化为二维矩阵? >>

mAtlAB中怎样将一维数组转化为二维矩阵?

可以用reshap(),也可以直接“捋直”了。 为了清晰点,给你举个例子吧: a=[1,2;3,4;]; b=a(:); c=reshape(a,[],1); 得到的b,c都是一样的一维列向量。 reshape介绍: reshape函数重新调整矩阵的行数、列数、维数。在matlab命令窗口中键入docreshap...

可以用reshap(),也可以直接“捋直”了。为了清晰点,给你举个例子吧。 a=[1,2;3,4;]; b=a(:); c=reshape(a,[],1); 得到的b,c都是一样的一维列向量。但是他们都是[1,3,2,4]';这是因为matlab里边是按列算坐标的,如果你想按行,那就先对a做一下转置吧~

可以使用内置的reshape函数 2、 reshape把指定的矩阵改变形状,但是元素个数不变

1、可以使用内置的reshape函数 2、 reshape把指定的矩阵改变形状,但是元素个数不变, 例如,行向量: a = [1 2 3 4 5 6] 执行下面语句把它变成3行2列: b = reshape(a,3,2) 执行结果: b = 1 4 2 5 3 6 觉得有帮助就采纳吧

a=rand(m,n,6) b=reshape(m*n,6) 一个示例: >> a=rand(2,3,2) a(:,:,1) = 0.8147 0.1270 0.6324 0.9058 0.9134 0.0975 a(:,:,2) = 0.2785 0.9575 0.1576 0.5469 0.9649 0.9706 >> b=reshape(a,6,2) b = 0.8147 0.2785 0.9058 0.5469 0.1270 0.9...

matlab本身就是通过列向量存储数据的(俗称“列优先”),任意维度的矩阵都可以用一维向量调用;不必转换。比如 a=[1 2 3;4 5 6;7 8 9] , a(4) 就是指 a(1,2) ,即 2。所以,虽然没有必要,但还是可以通过 b=a(:); 生成一个列向量

一定要用你说的函数,直接算也很快啊! clc; a=[1;2]; b=[1,2,3]; a*ones(1,3) ones(2,1)*b

首先,二维矩阵只能表示灰度图片。 所以,如果jpg是彩色的,要用rgb2gray 转换为灰度图片才可以。 其次,MATLAB读取进来的图片都是数组形式,如果要把图片保存为二维数组,直接使用save函数即可。 例如 picture是彩色图片。那么 pic = rgb2gray(...

举个例子,你看看就明白了 A = rand(81,81,81); n = 20; A1 = A(:,:,n); % 81*81 二维 A2 = A(:,n,:); % 81*1*81 三维 A3 = A(n,:,:); % 1*81*81 三维 % 将三维转为 81*81 二维 A22 = reshape(A2,81,81); A32 = reshape(A3,81,81);

对于你的问题,不需要用for循环将一维数组变二维数组。由于reshape函数要求的数据格式为double,而你导入的数据格式为其他型式,所以用reshape函数处理出现错误。 根据你的问题,我分别从含有17200行x1列数据文件(lhm.txt;lhm.mat)导入matlab...

网站首页 | 网站地图
All rights reserved Powered by www.lzth.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com