matlab矩阵运算很强大 ,几乎所有涉及矩阵运算的命令都有。

事实上,matlab里面所有变量都是以矩阵的形式保存下来的。

 

%%
>> x=[1:2.1:10] x = 1.0000 3.1000 5.2000 7.3000 9.4000

1冒号生成法

非常方便,相当于python里面的for循环

x=linspace(1,10,6)
%(初值,终值,项数)

linspace法

A(n):访问矩阵A里的第n个元素(以列为遍历顺序)

matlab内置一系列特定矩阵:[]空矩阵、eye 单位阵、blkdiag对角矩阵、ones 全部元素为1的矩阵、zeros全部元素为0的矩阵

blkdiag(1,2,3,4)

对角矩阵

matlab内置常见的指令: max 、min求最大最小元素;mean求平均值;median求中位数;sum求和【注意sum对矩阵操作的时候是按列求和】;prod求积;length求数组长度;size求矩阵的阶数。

c=blkdiag(1,2,3,4)
c(4,:)=5
sum(c)
sum(sum(c))

sum求和

关于除法,注意matlab里有两种除法,左除\和右除/【相当于左乘或者右乘那个矩阵的逆矩阵】

线性代数里面学过: 除以一个矩阵 等于 乘以它的逆矩阵,

所以只有方阵才能做除法哦【可逆的方阵】

举例:【注意:rank是求矩阵的 秩】

A=[1,0,1;0,0,2;3,1,2];
rank(A)
B=[2 5 1;2 0 3;1 2 2];
rank(B)
format rat %显示分数格式
A/B
A*inv(B)
B\A
inv(B)*A

矩阵的除法

结果如图:

关于matlab中的点运算

A=[1,0,1;0,0,2;3,1,2];
B=[2 5 1;2 0 3;1 2 2]; A*B
A.*B
A.^2

点运算

下面是一些对矩阵的操作函数

转置:在矩阵后面加一个 ' 就好

reshape 改变矩阵阶数

repmat 按指定的行列数复制矩阵

rot90 逆时针旋转矩阵90度

flipud 上下翻转
filplr 左右翻转

A=[1,0,1;0,0,2];
G=repmat(A,2,2)

repmat 整个复制

A=[1,0,1;0,0,2]
H=reshape(A,3,2)

矩阵重新塑形(行列)

关系运算符

A=[1,2,3;4,5,2]
B=3*ones(2,3)
A>B
%可以用来判别 符合条件的数据位

矩阵关系运算符

find主要就是找到矩阵中符合条件的元素的序号(按列顺序)

A=[1,2,3;4,5,2]
B=3*ones(2,3)
find(A==B)

find函数的应用

A=[1,2,3;4,5,2]
B=3*ones(2,3)
find(A>3) %返回满足条件的列序号
A(find(A>3)) %根据列序号取出具体位置的数值

利用find返回的列序号取具体值

再补充一些系统的命令

clc清屏

who 显示已有变量

whos 显示已有变量和具体信息

home 将光标移到左上角

clf 清除图像

A=magic(5);
C=[eye(5);eye(5)] ;
B=C*A %线性代数 左乘单位矩阵 行方向复制A矩阵

左乘单位矩阵 复制矩阵

A=magic(5);
A=[A;A]

矩阵拼接

计算两点距离

A=magic(2);
A=A(:);
B=magic(2);
B=B(:);
D=pdist2(A,B)

pdist2 计算距离

[matlab] 3.矩阵的更多相关文章

  1. Matlab中矩阵的平方和矩阵中每个元素的平方介绍

    该文章讲述了Matlab中矩阵的平方和矩阵中每个元素的平方介绍.   设t = [2 4 2 4] 则>> t.^2 ans = 4 164 16 而>> t^2 ans = ...

  2. matlab将矩阵数据归一化到[0,255]

    matlab将矩阵数据归一化到[0,255]     function OutImg = Normalize(InImg) ymax=255;ymin=0; xmax = max(max(InImg) ...

  3. Matlab操作矩阵的相关方法

    Matlab操作矩阵的相关方法 下面这篇文章主要是对吴恩达老师机器学习中matlab操作的一个整理和归纳 一.基本操作 1.生成矩阵(ones.zeros) A = [1 2;3 4;5 6]    ...

  4. Matlab/Eigen矩阵填充问题

    Matlab进行矩阵填充时可以填充空矩阵,相当于空矩阵不存在,例如一下代码: P_RES = [ P_xv P_xvy P_xv*dy_dxv'; P_yxv P_y P_yxv*dy_dxv'; d ...

  5. [matlab]改变矩阵的大小并保存到txt文件

    要完成的任务是,加载一个保存在txt文件中的矩阵, 并把它扩大10倍,并且要再次保存回去 %加载txt文件 >load('Matrix.txt'); %扩大10倍 repmat(Matrix,r ...

  6. matlab之矩阵分解

    矩阵分解 矩阵分解 (decomposition, factorization)是将矩阵拆解为数个矩阵的乘积. 1.三角分解法: 要求原矩阵为方阵,将之分解成一个上三角形矩阵(或是排列(permute ...

  7. MATLAB学习笔记(二)——主要是MATLAB的矩阵知识

    PS:主要是讲解矩阵的相应的实现方法,其实MATLAB的很大一部分的优势,就是集成了矩阵级别的运算,并以此为特点,可以进行多维空间上的验证. 让我们懂得了原来线性代数如此有用= - =. (一)MAT ...

  8. Matlab计算矩阵和函数梯度

    一.差分与微分 我自己的理解. 二.求解 2.1 矩阵 这就是matlab的计算结果.太小的话放大些: c = 4 5 9 7 2 1 5 2 6 >> [x,y]=gradient(c) ...

  9. Matlab计算矩阵间距离

    夜深人静时分,宿舍就我自己,只有蚊子陪伴着我,我慢慢码下这段文字............ 感觉知识结构不完善:上学期看论文,发现类间离散度矩阵和类内离散度矩阵,然后百度,找不到,现在学模式识别,见了, ...

随机推荐

  1. vue(一)使用vue-cli搭建项目

    一.安装node.js 去官网下载安装node.js:    https://nodejs.org/en/ 安装完成后,可以在命令行工具(Windows是cmd,苹果是终端控制)输入node -v 和 ...

  2. github 遇到的问题

    目录 1.遇到的问题关联远程仓库,操作顺序如下:2.解决方法3.git merge 与 git rebase4.git pull 与 git pull --rebase5.更多参考 博客逐步迁移至 极 ...

  3. vue2 切换路由时 页面滚动到顶部 用游览器返回时 记住上页的位置

    官方用例:https://router.vuejs.org/zh-cn/advanced/scroll-behavior.html import Vue from 'vue' import Route ...

  4. JavaScript中的let和const

    在ES6之前,JavaScript中只有两种作用域:全局作用域和函数内部的局部作用域.ES6中新增了两个重要的关键字,let和const,从而引入了块级作用域. 关键字var 使用var关键字声明的变 ...

  5. SAP MM PR中的Fixed ID字段与MD04里PR单据号后的星号

    SAP MM PR中的Fixed ID字段与MD04里PR单据号后的星号 如下图是我手工使用ME51N 创建的一个采购申请单据, ​ MD04去看这个PR, ​ 这个PR号码后面有一个*号,代表它是一 ...

  6. Tars 负载均衡

    // 传入主控地址,在 db_tars t_registry_info 表中 Communicator communicator = CommunicatorFactory.getInstance() ...

  7. Flutter 布局(二)- Padding、Align、Center详解

    本文主要介绍Flutter布局中的Padding.Align以及Center控件,详细介绍了其布局行为以及使用场景,并对源码进行了分析. 1. Padding A widget that insets ...

  8. (办公)rom包

    所谓ROM包,通俗点来讲,也就是手机上的系统安装包.使用过智能手机的朋友可能都有过这样的遗憾,自己所用的官方系统虽然能够满足绝大部分的需求,但总有一些细节不是很合自己的心愿……比如说,内置的输入法不好 ...

  9. Git基本操作和GtHub 特殊技巧

    <GitHub 入门与实践> 笔记 了解GitHub Git 和 GitHub 的区别 在Git中,开发者将源代码存入名为"Git仓库"的资料库中,并加以使用.而Git ...

  10. create table 使用select查询语句创建表的方法分享

    转自:http://www.maomao365.com/?p=6642 摘要:下文讲述使用select查询语句建立新的数据表的方法分享 ---1 mysql create table `新数据表名` ...