Bootstrap

matlab操作方法(一)——向量及其操作

 1.向量及其操作

matlab是英文Matrix Laboratory(矩阵实验室)的简称,是基于矩阵运算的操作环境。matlab中的所有数据都是以矩阵或多维数组的形式存储的。向量和标量是矩阵的两种特殊形式

向量是指单行或者单列的矩阵,它是构成矩阵的基础

1.1 向量赋值

赋值就是把数赋予代表常量或变量的标识符。matlab中的变量或常量都代表矩阵,标量可以看成是1X1的矩阵,向量则可以看成是1XN(行向量)或NX1的矩阵。赋值语句一般形式是“变量=表达式(或数)”

对于变量的赋值有以下几种方法:

(1)用向量构造操作符(方括号[ ])和数值给向量赋值 

上面得到的x是行向量,行向量放入中括号[ ]中,其中的数值之间用逗号或者空格隔开。如果要得到列向量,则数值之间用分号隔开。

当然也可以通过转置运算符“ ' ”来将行向量和列向量进行转换

(2)用冒号表达式给向量赋值

 matlab定义了独特的冒号表达式给行向量进行赋值,其基本格式如下:

j:k 等价于[j, j+1,...,k]

j:k 为空,if j > k

j:i:k 等价于[j:j+i:j+2i,...,k]

例如用冒号表达式生成行向量 

(3)用函数给向量赋值。

linspace(),logspace(),zeros(),ones(),rand(),randn()等函数可以用来生成向量

Matlab中linspace函数用法_matlab linspace-CSDN博客

matlab中zeros函数的使用方法详细介绍(附matlab代码)_matlab zeros函数-CSDN博客

(其他函数的用法可去自行搜索)

1.2向量操作

向量操作可以是针对向量中的某个元素或某几个元素,也可以是将整个向量当作整体来进行的元素群操作

对向量中的某个或某几个元素进行操作比较简单,仅仅使用小括号()加上元素在向量中的序数即可。可以用其完成对元素值的调用、对元素赋值或者改变其值。需要特别指出的是,采用end作为序数可以方便地对向量的最后一个元素进行操作,也可以使用(end-1)、(end-2)等对向量的倒数第二个、倒数第三个元素进行操作。

例如要将向量x中的第3个元素和最后一个元素互换,并显示互换后的结果

在向量元素值的调用过程中,如果小括号内的序数超过向量元素的个数,则会报错;但是如果是在对向量元素进行赋值的过程中,当小括号内的序数超过向量元素的个数时,则会完成赋值,并进行补0处理

1.3向量化操作

很多标准的matlab函数都能进行“向量化”:他们可以用于整个阵列,看起来就像很多个相同的函数独立地作用于阵列的每个元素。如

常用于向量化运算的函数有:min(),max(),  repmat(),  meshgrid(),  sum(), cumsum(), diff(), prod(), cumprod(), accumarray(), filter()。

;