您的位置:首页 > 编程语言 > MATLAB

matlab reshape函数

2016-04-10 14:13 176 查看
语法

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

使用方法:

B=reshape(A,m,n) 返回m*n矩阵B,它的元素是获得A的行宽度。假设A没有m*n元素,得到一个错误结果。

样例:

<span style="font-size:18px;">>> A=rand(1,10)</span>
结果:

<span style="font-size:18px;">A =

Columns 1 through 8

0.1622    0.7943    0.3112    0.5285    0.1656    0.6020    0.2630    0.6541

Columns 9 through 10

0.6892    0.7482
</span>


<span style="font-size:18px;">>> B=reshape(A,5,2)</span>
结果:

B =

0.1622    0.6020
0.7943    0.2630
0.3112    0.6541
0.5285    0.6892
0.1656    0.7482


(2)

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

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

返回一个和A有同样元素的n维数组,但结构变为m * n * p * …

比如:

<span style="font-size:18px;">>> A=rand(1,12)</span>
结果:A矩阵

A =

Columns 1 through 8

0.4505    0.0838    0.2290    0.9133    0.1524    0.8258    0.5383    0.9961

Columns 9 through 12

0.0782    0.4427    0.1067    0.9619


>> D=reshape(A,2,3,2)

D(:,:,1) =

0.4505    0.2290    0.1524
0.0838    0.9133    0.8258

D(:,:,2) =

0.5383    0.0782    0.1067
0.9961    0.4427    0.9619


(3)

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

>> C=reshape(A,5,[])
结果:

C =

0.1622    0.6020
0.7943    0.2630
0.3112    0.6541
0.5285    0.6892
0.1656    0.7482


(4)

B = reshape(A,siz)

返回一个与A同样元素的n维阵列,可是改造根据siz,一个向量改造改造的阵列的维度。

数值prod(siz)必须和prod(size(A))同样。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: