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]

可以从b中看到reshape是按列来读取的,如

a=[1  2 ; 3  4]

如果使用b=reshape(a,1,4)

则得到的结果是

b=[1 3 2 4]

如果想得到

b=[1 2 3 4]

需要使用

b=reshape(a',1,4)

因为reshape使用的列优先!

b转化回去是同样的道理。

 

使用reshpe后想得到b=[1 2 3 4 5 6 7 8 9]

只需要将a转置一下就可以了:

b=reshape(a',1,9)

----------------------------------------------

matlab中的解释如下:

RESHAPE Change size.

    RESHAPE(X,M,N) returns the M-by-N matrix whose elements

    are taken columnwise from X. An error results if X does

    not have M*N elements.

 

    RESHAPE(X,M,N,P,...) returns an N-D array with the same

    elements as X but reshaped to have the size M-by-N-by-P-by-...

    M*N*P*... must be the same as PROD(SIZE(X)).

 

    RESHAPE(X,[M N P ...]) is the same thing.

 

    RESHAPE(X,...,[],...) calculates the length of the dimension

    represented by [], such that the product of the dimensions

    equals PROD(SIZE(X)). PROD(SIZE(X)) must be evenly divisible

    by the product of the known dimensions. You can use only one

    occurrence of [].

 

    In general, RESHAPE(X,SIZ) returns an N-D array with the same

    elements as X but reshaped to the size SIZ. PROD(SIZ) must be

    the same as PROD(SIZE(X)).

 

源文档 <http://blog.sina.com.cn/s/blog_5feb3cea0100lz8b.html>

Matlab中reshape函数的使用的更多相关文章

  1. matlab中patch函数的用法

    http://blog.sina.com.cn/s/blog_707b64550100z1nz.html matlab中patch函数的用法——emily (2011-11-18 17:20:33) ...

  2. matlab中subplot函数的功能

    转载自http://wenku.baidu.com/link?url=UkbSbQd3cxpT7sFrDw7_BO8zJDCUvPKrmsrbITk-7n7fP8g0Vhvq3QTC0DrwwrXfa ...

  3. 【原创】Matlab中plot函数全功能解析

    [原创]Matlab中plot函数全功能解析 该帖由Matlab技术论(http://www.matlabsky.com)坛原创,更多精彩内容参见http://www.matlabsky.com 功能 ...

  4. matlab 中max函数用法

    Matlab中max函数在矩阵中求函数大小的实例如下:(1)C = max(A)返回一个数组各不同维中的最大元素.如果A是一个向量,max(A)返回A中的最大元素.如果A是一个矩阵,max(A)将A的 ...

  5. Matlab中plot函数全功能解析

    Matlab中plot函数全功能解析 功能 二维曲线绘图 语法 plot(Y)plot(X1,Y1,...)plot(X1,Y1,LineSpec,...)plot(...,'PropertyName ...

  6. matlab中cumsum函数

    matlab中cumsum函数通常用于计算一个数组各行的累加值.在matlab的命令窗口中输入doc cumsum或者help cumsum即可获得该函数的帮助信息. 格式一:B = cumsum(A ...

  7. 『转载』Matlab中fmincon函数获取乘子

    Matlab中fmincon函数获取乘子 一.输出结构 [x,fval,exitflag,output,lambda] = fmincon(......) 二.结构说明 lambda结构 说     ...

  8. matlab中norm函数的用法

    格式:n=norm(A,p) 功能:norm函数可计算几种不同类型的矩阵范数,根据p的不同可得到不同的范数 以下是Matlab中help norm 的解释 NORM   Matrix or vecto ...

  9. matlab中fprintf函数的具体使用方法

    matlab中fprintf函数的具体使用方法实例如下: fprintf函数可以将数据按指定格式写入到文本文件中.其调用格式为: 数据的格式化输出:fprintf(fid, format, varia ...

随机推荐

  1. 2、IOS开发--iPad之仿制QQ空间 (初始化HomeViewController子控件视图)

    1.先初始化侧边的duck,效果图: 实现步骤: 2.然后初始化BottomMenu,效果: 步骤: 其实到这里,会出现一个小bug,那就是: 子控件的位置移高了,主要原因是: 逻辑分析图: 问题解决 ...

  2. MySQL学习总结(摘抄)

    1.数据库概述 简 而言之,数据库(DataBase)就是一个存储数据的仓库.为了方便数据的存储和管理,将数据按照特定的规律存储在磁盘上.通过数据库管理系统,可以有 效的组织和管理存储在数据库中的数据 ...

  3. GET/POST请求的使用《极客学院 --AFNetworking 2.x 网络解析详解--2》学习笔记

    AFNetworking是开源代码排名第一的开源库.  GET请求的请求正文 一般都是明文显示的,携带的数据量小. POST用于处理复杂的业务,并不用明文的请求,其实POST请求可以携带更多的参数,只 ...

  4. 去除UITableView中多余的分割线或者隐藏cell间的分割线

    一:去除tableView多余的分割线 首先,自定义一个方法 -(void)setExtraCellLineHidden: (UITableView *)tableView{    UIView *v ...

  5. Java部分总结图片版2(已加上原图链接!!!)

    Java部分总结图片版2(加上原图链接)

  6. java ee 面试时的机试题

    写一个简单的用户登录  servlet+jsp+原生ajax+json实现方式:  http://pan.baidu.com/s/1jGDY5h0

  7. Effective Java 78 Consider serialization proxies instead of serialized instances

    Serialization proxy pattern private static nested class (has a single constructor whose parameter ty ...

  8. Tesseract-OCR 字符识别---样本训练 [转]

    Tesseract是一个开源的OCR(Optical Character Recognition,光学字符识别)引擎,可以识别多种格式的图像文件并将其转换成文本,目前已支持60多种语言(包括中文).  ...

  9. SeekableByteChannel 和 FileChannel

    Java7中引入了SeekableByteChannel接口,允许我们定位到文件的任意位置进行读写.注意这里的写,不是新增式的插入,而是覆盖,当然在文件末尾的写,是新增. java.nio.chann ...

  10. windows7+eclipse+hadoop2.5.2环境配置

    windows7+eclipse+hadoop2.5.2环境配置    一.hadoop集群环境配置 参考我的前一篇文章(ubuntu + hadoop2.5.2分布式环境配置 http://www. ...