Matlab中的向量和数组(超详细)
Matlab中的向量和数组(超详细)
文章目录
- Matlab中的向量和数组(超详细)
- Matlab中的向量
- 介绍
- 创建向量
- 向量的大小
- 索引向量
- 数值索引
- 逻辑索引
- 缩短向量
- 向量运算
- 算术运算
- 逻辑运算
- sum()、min()、max()、round()、ceil()、floor()、fix()
- 切片
- Maltab中的数组
- 数组的属性
- 创建数组
- 访问数组元素
- 数组运算
- 数组的算术运算
- 数组的逻辑运算
- sum()、max()、min()、round()、ceil()、floor()、fix()
- 连接数组
- 切片数组
- 重塑数组
Matlab中的向量
介绍
matlab中的向量是只有一行元素的数组,向量中的单个项通常称为元素。Matlab中的向量索引值从1开始,而不是从0开始。
创建向量
- 直接输入值
例如:
这里既可以用逗号来分割,也可以用空格
- 使用冒号输入某一数字范围的值,例如,C=1:4:20,其中第一个数字是起始值,第二个数字是步长,第三个数字是终止值。如果步长是1的话,可以不写步长
例如:
- 使用函数linspace(⋯\cdots⋯):用于创建两个限定值之间固定数量的值。
例如:
其中第一个数字是起始值,第二个数字是终止值,第三个数字是这个区间向量的个数
- 函数zeros(1,n):创建全零的向量
例如:
其中第一个数字是数组的行数,第二个数字是数组的列数。
- 函数ones(1,n):创建全1的向量
例如:
其中第一个数字是数组的行数,第二个数字是数组的列数。
- rand(1,n):创建0~1之间的随机数的向量
例如:
向量的大小
Matlab提供两个函数来确定一般数组和特殊向量的大小:size()和length().
- size():返回向量中的行的数量和列的数量。由于向量是一维的,所以第一个每次输出都是一
- length():返回数组行列大小的最大值,对于向量,表示其长度
例如:
索引向量
通过在括号内输入零个(全部输出)或多个元素的索引值,可以单个或分组访问向量中的元素。可以通过以下两种方式中的任意一种访问向量中的元素: 使用数值向量和逻辑向量。
数值索引
通过在括号内输入零个或多个元素的索引值,可以单个或分组访问向量中的元素。
例子:
另外,索引环境中的关键字end表示向量中的最后一个元素的索引
**注意:**在Matlab中在赋值操作中输入的索引超过当前的边界,Matlab会自动扩列,空位用零补齐,比如,我们在这个例子中输入A(10)看看会有什么结果。
逻辑索引
我们来看一个例子:
创建了一个condition逻辑数组,通过数组来索引这个向量
缩短向量
有些时候,我们需要删除向量中的元素。可以用索引将需要删除的部分赋值为[ ]
但是,缩短向量不是做正确的方法,因为可能会导致一些逻辑问题,在可行的情况下,应该使用索引来复制需要保存的元素。
向量运算
算术运算
- 向量中的加减法运算
可以看见是对向量中每个元素进行加法运算,减法也一样
- 向量中的乘法、除法.
例子
- 向量中的指数
.∗.*.∗ 和 ∗*∗的区别:
对于矩阵和数字之间的运算,.∗.*.∗ 和 ∗*∗没什么区别,但是对于矩阵和矩阵之间,.∗.*.∗ 表示矩阵对应元素相乘,而∗*∗表示矩阵乘法。
逻辑运算
向量的逻辑运算会产生的逻辑结果向量。
例如:
逻辑与(&)和逻辑或(|):
例子:
find():可以用find()函数查找值为true的元素在一个逻辑向量中的索引值
例如:
sum()、min()、max()、round()、ceil()、floor()、fix()
sum():向量中元素的总和;
min()、max():返回向量中元素最小最大值;
round()、ceil()、floor()、fix():常规取整、向上取整、向下取整、向零取整
切片
切片操作能将一个向量中的指定元素复制到另一个向量的不同位置。
看一个简单的例子:
Maltab中的数组
向量是聚集相似数据集的最简单的方法。而数组是向量的拓展,使其包括多个维度的数组,其中二维数组是每行具有相同的列,并且每列具有相同的行。
数组的属性
- size():返回各个维度的大小
- length():返回数组的最大维度
创建数组
直接输入值
和向量一样,在数组中直接输入值时,可以使用分号(;)或以新的一行来表示换行
zeros(m,n):创建m行n列的全0的数组
rand(m,n):创建m行n列的0~1随机数的数组
randn(m,n):创建m行n列的正态分布随机数的数组
diag():返回对角线上的元素
访问数组元素
数组的索引是从列开始,从上往下依次为1,2,3 , ⋯\cdots⋯
例如:
数组运算
数组的算术运算
- 数组之间的加减
例子:
- 数组之间的乘法
数组和数字的乘法:对应元素相乘
例子:
数组与数组的乘法(∗*∗):一定要符合矩阵可乘。
例子
数组与数组之间的.∗.*.∗:对应元素相乘:
例子:
数组的逻辑运算
如果两个数组具有相同的大小,或者其中一个数组是标量(及长度为1的向量),逻辑运算可以同时执行在这两个数组的各个元素上。
例如
sum()、max()、min()、round()、ceil()、floor()、fix()
sum():返回一个行向量,包含该数组每列的总和
max()和min():分别返回一个行向量,每列的最大值和每列的最小值
连接数组
看一个简单的例子
切片数组
对一个数组进行切片:A(对行索引,对列索引)
例子:
重塑数组
有些时候我们希望将某一维度的数组变形为另一种维度的需求,函数reshape(⋯\cdots⋯)能完成这种边形。
例子:
Matlab中的向量和数组(超详细)相关推荐
- linux跑到命令行是到了哪里,在Linux命令行中使用tcpdump「超详细」
原标题:在Linux命令行中使用tcpdump「超详细」 灵活,强大的命令行工具有助于减轻网络问题排查的痛苦. 根据我作为系统管理员的经验,我经常发现网络连接问题难以排除故障. 对于那些情况,tcpd ...
- win10环境下下载安装openpose(only cpu)并在pycharm中运行代码(超详细)
win10环境下下载安装openpose(only cpu)并在pycharm中运行代码(超详细) (一)前言 (二)准备工作 (三)友情提醒 (四)详细安装步骤 1.新建文件夹 2.下载OpenPo ...
- MATLAB中矩阵与数组的区别,点运算符的运用
转自http://blog.csdn.net/peterkang202/article/details/26623219 正如matlab(矩阵实验室)这个名字一样,matlab的数据结构只有矩阵(a ...
- matlab中欠定方程组超定方程组_一篇文章入门大规模线性方程组求解
前面介绍过主要的线性方程组求解库,参考附录.求解大规模线性方程组是仿真软件求解器的底层技术,求解器时间基本都消耗在方程组求解上.线性方程组的解法比较成熟,方法也有很多,而且不同的方法对应不同类型方程组 ...
- matlab中非0即1函数,matlab 中统计一个数组中非零元素个素的函数名称是什么?
可以自己写一个函数用来给数组排序.或者用MATLAB自带的 Matlab 用sort函数排序 二维数组2008-09-14 22:51在Matlab中排序某个向量(一维)时,可以使用sort(A),其 ...
- matlab中如何用数组绘图,matlab 基础学习(1)——数组,矩阵操作和绘图基础学习...
一维数组(创建,赋值,取值,分割取值,四则运算等操作) 创建一维数组 >> A=[] %创建空的数组 >> B=[1 2 3 4 5] %两种创建行向量,数组的方式 >& ...
- matlab 稀疏随机矩阵,MATLAB中的稀疏数组
本文概述 声明普通数组后, MATLAB将为数组中的每个元素创建一个内存位置.例如, 函数a =眼睛(10)将创建100个元素, 这些元素排列为10 x 10结构.在此数组中, 其中90个元素为零! ...
- matlab 中矩阵和数组
文章目录 一.联系 二.创建 一.联系 一维数组相当于向量,二维数组相当于矩阵.所以矩阵是数组的子集 数组运算是指数组对应元素之间的运算,也称点运算.矩阵的乘法.乘方和除法有特殊的数学含义,并不是数组 ...
- excel中如何输入数组公式详细介绍
内容提要:文章详细介绍excel中如何输入数组公式的方法,并用动画演示多单元格数组公式是如何输入的.对Excel感兴趣的朋友可加Excel学习交流群:284029260(www.itblw.com) ...
最新文章
- 关于Access数据库执行Update语句后,不报错,但影响行数总是返回0的问题
- 某程序员哀叹:连续帮三任女朋友进360,京东等互联网大厂,进去后却都惨遭分手!...
- 【C/C++多线程编程之五】pthread线程深入理解
- Linux 从源码编译安装 OpenSSL
- [vue] 说说你对vue组件的设计原则的理解
- 个性化商品搜索相关研究梳理
- 导出csv文件数字会自动变科学计数法的解决方式
- mysql编程游标取值_mysql存储过程中使用游标的实例
- HDU1996 汉诺塔VI【水题】
- 计算机桌面组成部分教案,三年级信息技术第五课设置个性桌面教学设计
- 【Python精华】100个Python练手小程序
- java cmd 乱码_java在cmd运行时出现乱码解决方法
- linux forge服务器,linux下搭建我的世界spongeforge 服务器 (海绵端)
- 2019 iPad iPhone所有尺寸
- jQuery 从零开始学习 (三) 属性与css样式
- 获取汉字的拼音首字母
- Ubuntu16.04搜索不到wifi列表
- CentOS7-查看IP
- 华雨打shanghtml单页网站源码
- 计算机图标显示的是word,word图标不显示怎么办 设置显示word图标的方法