reshape 函数怎样用?

 我来答
帐号已注销
推荐于2019-08-20 · TA获得超过82.9万个赞
知道大有可为答主
回答量:2602
采纳率:100%
帮助的人:169万
展开全部

reshape 函数就是变换成特定维数的矩阵。语法是 A = reshape(A,m,n); 或者 A = reshape(A,[m,n])。都是将A 的行列排列成m行n列。

用法举例说明如下:

A =【1    4    7    10,2    5     8    11,3    6     9    12】

B = reshape(A,2,6)

B =【1    3    5    7    9   11,2    4    6    8   10   12】

B = reshape(A,2,[])

B =【1    3    5    7    9   11,2    4    6    8   10   12】

reshape是一种函数,函数可以重新调整矩阵的行数、列数、维数。在matlab命令窗口中键入doc reshape或help reshape即可获得该函数的帮助信息。

B = reshape(A,size)是指返回一个和A元素相同的n维数组,但是由向量size来决定重构数组维数的大小,prod(size(B))的数量值必须和prod(size(A))的保持一致。

扩展资料:

调用格式

B = reshape(A,m,n)

B = reshape(A,m,n,p,...)

B = reshape(A,[m n p ...])

B = reshape(A,...,[ ],...)

B = reshape(A,size)

调用格式说明

B = reshape(A,m,n)

返回一个m*n的矩阵B, B中元素是按列从A中得到的。如果A中元素个数没有m*n个, 则会引发错误。

B = reshape(A,m,n,p,...)和B = reshape(A,[m n p ...])

返回一个和A具有相同元素的N(不是上面的参数n)维数组。但B的尺寸是m*n*p*...,m*n*p*...必须和prod(size(A))相等。即A和B元素个数相等。

B = reshape(A,...,[ ],...)

计算由占位符[ ]所表示的尺寸的长度,这样维度的乘积等价于prod(size(A))。而prod(size(A))的值必须能被指定维数的乘积所整除。在这里面占位符[ ] 只能使用一次。

相关函数: shiftdim, squeeze, circshift, permute, repmat

参考资料:百度百科——reshape

YBudge
高粉答主

推荐于2019-11-08 · 每个回答都超有意思的
知道小有建树答主
回答量:1541
采纳率:100%
帮助的人:39.7万
展开全部

reshape 函数有以下五种调用形式:

1、B = reshape(A,m,n)

2、B = reshape(A,m,n,p,...)

3、B = reshape(A,[m n p ...])

4、B = reshape(A,...,[ ],...)

5、B = reshape(A,size)

reshape是一种函数,函数可以重新调整矩阵的行数、列数、维数。

扩展资料:

reshape 函数就是变换成特定维数的矩阵,是按照列的顺序进行转换的,也就是第一列读完,读第二列。

具体例子:

A =
[ 1    4    7    10
2    5    8    11
3    6    9    12]

B = reshape(A,2,6)

B =
[1    3    5    7    9   11
2    4    6    8   10   12]

B = reshape(A,2,[])

B =
[ 1    3    5    7    9   11
2    4    6    8   10   12]

参考资料:百度百科:reshape 函数

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
挚爱和你共亨
2015-09-10 · TA获得超过1.4万个赞
知道大有可为答主
回答量:1.9万
采纳率:0%
帮助的人:1.1亿
展开全部
reshape把指定的矩阵改变形状,但是元素个数不变,

例如,行向量:
a = [1 2 3 4 5 6]

执行下面语句把它变成3行2列:
b = reshape(a,3,2)

执行结果:
b =
1 4
2 5
3 6
若a=[1 2 3
4 5 6
7 8 9]
使用reshpe后想得到b=[1 2 3 4 5 6 7 8 9]
只需要将a转置一下就可以了:
b=reshape(a',1,9)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
is99kdf
2006-05-17 · TA获得超过133个赞
知道答主
回答量:8
采纳率:0%
帮助的人:0
展开全部
就是把指定的矩阵改变形状,但是元素个数不变,

例如,行向量:
a = [1 2 3 4 5 6]

执行下面语句把它变成3行2列:
b = reshape(a,3,2)

执行结果:
b =
1 4
2 5
3 6
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiongxionghy
推荐于2017-09-05 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1753
采纳率:75%
帮助的人:2940万
展开全部
比如
A=[1 2 3 4 5 6]
reshape(A,2,3)
就是把A的元素排成2行3列
1 3 5
2 4 6
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式