matlab—基本操作与矩阵输入

一、写在前面

还有一个月就美赛了,本系列文章适用于完全没有任何matlab基础,但是有别的编程语言基础的人看,我会结合自己的理解,有的放矢的讲,不会掺杂很多废话,各位读者轻喷~

二、基本操作

2.1matlab运算符

Matlab运算符分五类:数学、关系,逻辑、位、集合运算符

2.1.1 数学运算符

其主要功能是进行各种数学运算,按其优先级别依次为:

1. 转置(.’)、共轭转置(‘)、幂次(.^)、矩阵幂次(^)

2. 正、负号(+/-)

3. 乘法(.*)、矩阵乘法(*)、元素左右除(.\,./)、矩阵左右除(\,/)

4. 加减法(+,-)

5. 冒号(:)

在同一优先级中,运算自左至右完成,对运算顺序不确定时,最好以“()”实现强制运算顺序

对于矩阵,右除A/B,相当于X*B=A的解矩阵,左除A\B,相当于A*X=B的解矩阵

2.1.2 关系运算符

有六种:==,~=,>,>=,<,<=,关系运算符总是以矩阵内元素对元素做运算,若满足关系,则返回1,不满足则返回0

2.1.3 逻辑运算符

有三种:&(与),|(或),~(非)

相关命令还有:all(),any()

当所有向量元素为“真”,all返回1,而当任意元素为“真”,any即返回1

示例:

图 2-1 “与”运算

图2-2 “all”,“any”运算

2.1.4 位运算符

对非负整数进行位对位的逻辑运算,主要函数如下:

bitand():位对位AND,bitor():位对位OR,bitxor():位对位XOR,bitset():设定某位,bitget():取得某位,bitcmp():位对位NOT,bitshift():位移(左移)

2.1.5 集合运算符

仅限于向量运算,此时matlab将向量视为集合来进行各种集合运算,常用命令如下:

Union():并集,intersect():交集,setdiff():差集,setxor():异或,unique():最小等效集合,ismember():元素是否属于集合

2.2 数值精度

format short:默认格式,小数点后保留4位

format long:有效数字16位

format long e:有效数字16位加3位指数

format short e:有效数字5位加3位指数

format bank:保留两位小数位

format +:只给出正负

format rational:以分数的形式表示

format hex:以16进制数表示

format long g:15位有效数

format short g:5位有效数

2.3 常用keyword

clc:清空命令行窗口

clear:清空工作区所有变量,clear x:清空工作区中x变量

who:显示工作区所有变量

Whos:显示工作区所有变量的详细信息

三、矩阵

3.1 矩阵输入

行矩阵(Row vector):>> a = [1 2 3 4]

列矩阵(Column vector):>> b = [1;2;3;4]

3.2 索引向量(矩阵)

>>A(8) = 9,编号是按照一列一列数下来,在向量A中,“21”对应的编号是4

>>A([1 3 5]) = 1 31 17

>>A([1 3;1 3]) = 

>>A(3,2) = 2,以逗号隔开的两个数字,前面表示行,后面表示列

>>A([1 3],[1 3]) =

,前面的[1 3]表示,第一行和第三行,后面的[1 3]表示第一列和第三列

3.2.1 替换矩阵值

方法:A() = [],等号左边是索引,首先索引到需要替换的位置,然后用右边的值去赋值(替换)

如果想要删掉某一行,格式:A(x,:) = []

如果想要删掉某一列,格式:A(:,x) = []

3.2.2 “:”操作

如果要创建一个非常长的矩阵,例如从1到1000,手动输入非常麻烦,这时就可以利用“:”操作符

格式:A = [first:tolerance:end],从first开始,end为结束,tolerance为公差创造一个等差向量(tolerance默认值为1)

“:”操作符还有另一种用法,如果想取矩阵的某一行或者某一列,只需要A(x,:)或者A(:,x),x表示数值

3.2.3 矩阵合并操作

格式:F = [A B]或F = [A;B](这两种做法产生的结果是不一样的)

3.3 矩阵运算

3.3.1 矩阵与矩阵运算

Y1 = A+B = 

Y2 = A*B =

(满足矩阵乘法)

Y3 = A.*B =

(两矩阵对应位置上的元素相乘)

Y4 = A/B = A*inv(B)(两矩阵相除等于左边的矩阵乘以右边矩阵的逆矩阵)

Y5 = A./B(两矩阵对应位置上的元素相除)

3.3.2 矩阵与实数运算

X1 = A+a =

(将矩阵各位置上的值分别加上该实数)

X2 = A/a = A./a(将矩阵各位置上的值分别除以该实数)

X3 = A^a = A^2 = A*A(满足矩阵与矩阵相乘的法则)

X4 = A.^a = A.^2 =

(矩阵各位置上的元素进行a次方的运算)

X5 = A’ =

(矩阵转置)

3.4 特殊矩阵

eye(n):n×n的单位矩阵

zeros(n1,n2):n1×n2的矩阵,矩阵内元素全部为0

ones(n1,n2):n1×n2的矩阵,矩阵内元素全部为1

diag([x1 x2 x3]):主对角线为x1,x2,x3的矩阵

linspace(a,b,n):生成一个1×n的矩阵,第一个元素值为a,最后一个元素值为b,共有n个数据

rand(m,n):生成一个m×n阶的矩阵,矩阵内的值是0-1之间的随机值

3.5 常用矩阵函数

max(A) = 7 5 9(max函数的作用是求出矩阵每一列中的最大值)

max(max(A)) = 9(max外面嵌套一个max的作用是求出矩阵所有元素中的最大值)

min(A)= 0 0 3(min函数的作用是求出矩阵每一列中的最小值)

min(min(A)) = 0(min外面嵌套一个min的作用是求出矩阵所有元素中的最小值)

sum(A) = 8 7 18(sun函数的作用是计算矩阵每一列的和)

sum(sum(A)) = 33(sum外面嵌套一个sum的作用是求出矩阵内所有元素的和)

mean(A)(mean函数的作用是计算矩阵每一列的平均数)

mean(mean(A))(mean外面嵌套一个mean的作用是求出矩阵内所有元素的平均数)

sort(A) =

(sort函数的作用是将矩阵每一列元素从小到大进行排序)

sortrows(A) =

(sortrows函数的作用是按照第一列中数值从小到大的顺序把每一行进行排序)

size(A) = 3 3(size函数的作用就是计算出矩阵有多少行多少列)

length(A) = 3(length函数的作用是求出行数或者列数当中的较大值)

find(A==6) =8(find函数的作用是求出满足条件的值在矩阵当中的位置)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ATYUN订阅号

【学术】一文搞懂自编码器及其用途(含代码示例)

自编码器(Autoencoder)是一种旨在将它们的输入复制到的输出的神经网络。他们通过将输入压缩成一种隐藏空间表示(latent-space represen...

32790
来自专栏个人分享

旋转数组的最小数字

把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减序列的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2...

9540
来自专栏社区的朋友们

Kaggle 实战:Ghouls, Goblins, and Ghosts

本例使用R语言中的决策树以及随机森林package对kaggle的一个分类问题解题的全部过程。本文需要读者对机器学习中的决策树、随机森林的原理有所了解,并且知道...

1K00
来自专栏人工智能LeadAI

机器学习实战 | 第二章:线性回归模型

线性回归(Linear Regression) 这个类是传统最小二乘回归的类.是最基础的线性回归的类. class sklearn.linear_model....

32370
来自专栏CreateAMind

keras doc 5 泛型与常用层

32840
来自专栏mathor

二分查找与二分答案(4)

186100
来自专栏李智的专栏

Deep learning基于theano的keras学习笔记(2)-泛型模型(含各层的方法)

  我们希望预测Twitter上一条新闻会被转发和点赞多少次。模型的主要输入是新闻本身(一个词语序列)。但我们还可以拥有额外的输入(如新闻发布的日期等)。这个模...

10010
来自专栏李智的专栏

Deep learning基于theano的keras学习笔记(1)-Sequential模型

《统计学习方法》中指出,机器学习的三个要素是模型,策略和优算法,这当然也适用于深度学习,而我个人觉得keras训练也是基于这三个要素的,先建立深度模型,然后选用...

10310
来自专栏用户画像

特征处理

版权声明:本文为博主-姜兴琪原创文章,未经博主允许不得转载。 https://blog.csdn.net/jxq0816/article/details...

10520
来自专栏我是业余自学C/C++的

对角矩阵

15020

扫码关注云+社区

领取腾讯云代金券