matlab语言入门

一.基本操作

1.清除操作

clear; 清除工作区所有文件

clc; 清除命令行内所有显示的文字

2.一些快捷键

ctrl + R 注释

ctrl + T 取消注释

ctrl + C 中断命令行调试

在命令行按上键可以调出历史命令

3.一些关于matlab的常识

在每句的末尾加上分号是不显示这句话的结果

matlib是区分大小写的

Inf表示无穷

4.输入输出

input输入,disp输出

a = input('请输入一个数字:');
disp(a)
5.字符串操作

在matlab字符串都是用单引号包起来的。

字符串的合并:

第一种方法:

a = strcat('请输入','一个数字')
输出:
a =请输入一个数字

第二种方法:

a = ['请输入','一个数字']
输出:
a =请输入一个数字

将数值转化为字符串的形式,然后就可以和其他的字符串去拼接:

a = 2;
a = num2str(a); %转化为字符串的形式
disp(strcat('数字是',a))
输出:
数字是2

二.向量操作

6.向量的表示

行向量:

a = [1 2 3]
a = [1,2,3]
输出:
a =1     2     3

列向量:

a = [1;2;3]
输出:
a =123

矩阵:

a = [1 2 3;4 5 6;7 8 9]
输出:
a =1     2     34     5     67     8     9
7.向量的求和sum函数和求积的prod函数
a = [1 2 3;4 5 6;7 8 9]
sum(a)
输出:
ans =12    15    18

可见sum函数默认是按列求和的,把每列的元素求和,生成一个行向量。

这是因为默认的维度dim = 1,若是设置dim = 2 则是按行求和,生成一个列向量。

a = [1 2 3;4 5 6;7 8 9]
sum(a,2)
输出:
ans =61524

那怎么将矩阵内所有元素相加呢

a = [1 2 3;4 5 6;7 8 9]
sum(sum(a,2))   %第一种方法
sum(a(:))   %第二种方法
输出:
ans =45

类比于sum函数,求乘积的prod函数,直接使用是每一列求乘积。

a = [1 2 3;4 5 6;7 8 9]
prod(a)
输出:
ans =28    80   162

维度为2时是每一行求乘积:

a = [1 2 3;4 5 6;7 8 9]
prod(a,2)
输出:ans =6120504
8.向量的求最大值函数max和求最小值函数min

直接使用的话输出每一列的最大值或这最小值

a = [1 2 3;4 5 6;7 8 9]
max(a)
min(a)
输出:
ans =7     8     9ans =1     2     3

可以指定维度,但是和sum函数略有不同

a = [1 2 3;4 5 6;7 8 9]
max(a,[],2)
min(a,[],2)
输出:
ans =369ans =147

甚至可以直接找到每一行的最大最小值的位置

a = [1 2 3;4 5 6;7 8 9]
[max_number,max_point] = max(a,[],2)
[min_number,min_point] = min(a,[],2)
输出:
max_number =369max_point =333min_number =147min_point =111
9.取矩阵的元素

取矩阵的某一元素,例如第二行第三列的元素

a = [1 2 3 4 5;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20;21 22 23 24 25]
a(2,1)
输出:
ans =6

取矩阵的某一行

a = [1 2 3 4 5;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20;21 22 23 24 25]
a(2,:)
输出:
ans =6     7     8     9    10

取矩阵的某两行

a = [1 2 3 4 5;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20;21 22 23 24 25]
a([1,2],:)
输出:
ans =1     2     3     4     56     7     8     9    10

取矩阵的二到四行

a = [1 2 3 4 5;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20;21 22 23 24 25]
a(2:4,:)
ans =6     7     8     9    1011    12    13    14    1516    17    18    19    20

取矩阵的第二行到最后一行

a = [1 2 3 4 5;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20;21 22 23 24 25]
a(2:end,:)
输出:
ans =6     7     8     9    1011    12    13    14    1516    17    18    19    2021    22    23    24    25

从第一行开始每隔一行取一行

a = [1 2 3 4 5;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20;21 22 23 24 25]
a(1:2:end,:)
输出:
ans =1     2     3     4     511    12    13    14    1521    22    23    24    25

对于列来说的话也是一样,就不再赘述

9.描述矩阵大小的size函数

size函数返回两个值,一个是矩阵的行数(r),一个是列数(c)

a = [1 2 3 4 5;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20;21 22 23 24 25]
[r,c] = size(a)
输出:
r =5c =5% r = size(a,1)
% c = size(a,2)
10.重复矩阵的repmat函数

repmat(A,m,n)函数可以将函数按照块来复制,复制成m*n块

a = [1 2 3;4 5 6;7 8 9]
b = repmat(a,2,1)
b = repmat(a,3,2)
输出:
b =1     2     34     5     67     8     91     2     34     5     67     8     9b =1     2     3     1     2     34     5     6     4     5     67     8     9     7     8     91     2     3     1     2     34     5     6     4     5     67     8     9     7     8     91     2     3     1     2     34     5     6     4     5     67     8     9     7     8     9
11.求逆函数inv

没什么可讲的,直接求逆运算

a = [1 2 3;4 5 6;7 8 9]
inv(a)
输出:
ans =1.0e+16 *0.3153   -0.6305    0.3153-0.6305    1.2610   -0.63050.3153   -0.6305    0.3153
12.乘除乘方运算,和点乘点除点乘方运算

除法就相当于乘以另一个矩阵的逆

点乘和点除或者点乘方相当于是两个矩阵的对应元素做乘除法

a = [1 2 3;4 5 6;7 8 9]
13.求特征值和特征向量eig函数

直接输出特征值:

a = [1 2 3;4 5 6;7 8 9]
eig(a)
输出:
ans =16.1168-1.1168-0.0000

输出特征向量和特征值(V特征向量,D特征值):

a = [1 2 3;4 5 6;7 8 9]
[V,D] = eig(a)
输出:
V =-0.2320   -0.7858    0.4082-0.5253   -0.0868   -0.8165-0.8187    0.6123    0.4082D =16.1168         0         00   -1.1168         00         0   -0.0000
14.查找find函数

直接使用是不为0的元素的索引

a = [1 2 3;4 5 6;7 8 9]
find(a)
输出:
ans =123456789

找出前三个不为0的数的索引

a = [1 2 3;4 5 6;7 8 9]
find(a,3)
输出:
ans =123

返回后三个呢

a = [1 2 3;4 5 6;7 8 9]
find(a,3,'last')
输出:
ans =789

输出行列信息,甚至对应元素的值

a = [1 -3 0;0 0 8;4 0 6]
[r,c,v] = find(a)
输出:
r =13123c =11233v =14-386

找到是否含有元素为10

a = [1 -3 0;0 0 8;4 0 6]
find(a == 10)
输出:
ans =空的 0×1 double 列矢量
15.条件判断if-else语句

话不多说,直接上语法

a = input('please input a number: ')
if a >= 80 disp('优秀')
elseif a >= 60disp('良好')
else disp('退学吧')
end
16.循环语句

1到5循环

for i = 1:5disp(i)
end
输出:12345

matlab语言入门相关推荐

  1. MATLAB语言入门的第一步

    一. MATLAB语言优势 MATLAB语言是当前国际上自动控制领域的首选计算机语言,也是很多理工科专业最适合的计算机数学语言.通过学习MATLAB可以更深入地理解和掌握数学问题的求解思路,提高求解数 ...

  2. matlab怎么删除对象,ROS与Matlab语言入门教程-在Gazebo中增加、建立和移除对象

    本例程探索如何深层次地与MATLAB中的Gazebo仿真器交互.主题包括创建简单的模型.增加链接和加入模型.将模型连接在一起和应用力到物体. 预备知识:"4.2 开始使用Gazebo和仿真的 ...

  3. matlab定义机器人位置,ROS与Matlab语言入门教程-差动机器人的路径跟踪

    该例程演示如何使用机器人运动模型控制机器人跟踪目标路径.该例程使用"Pure Persuit"路径跟踪控制器驱动仿真机器人沿着预先决定的路径运动.要求的路径时一系列的陆标,该陆标是 ...

  4. MATLAB从入门到精通-最速下降算法、牛顿算法、BFGS拟牛顿算法、共轭梯度算法无约束极值问题

    前言 以下是我为大家准备的几个精品专栏,喜欢的小伙伴可自行订阅,你的支持就是我不断更新的动力哟! MATLAB-30天带你从入门到精通 MATLAB深入理解高级教程(附源码) tableau可视化数据 ...

  5. MATLAB从入门到精通-欧拉法与梯形法求解微分方程(含MATLAB源码)

    前言 以下是我为大家准备的几个精品专栏,喜欢的小伙伴可自行订阅,你的支持就是我不断更新的动力哟! MATLAB-30天带你从入门到精通 MATLAB深入理解高级教程(附源码) tableau可视化数据 ...

  6. Julia教程:Julia语言入门

    正如我在" 朱莉娅是什么? ", Julia是一种用于数值计算的免费开源高级,高性能动态编程语言,它将动态语言的开发便利性与已编译的静态类型语言的性能相结合. 它设计用于科学计算, ...

  7. 第一章 matlab 学习入门之matlab基础

    matlab系列文章目录 第一章 matlab 学习入门之matlab基础 在这一章会学习到: 数据类型(数值,字符串,结构,单元数组,函数句柄,映射容器) 运算符与运算(算术运算符,关系运算符,逻辑 ...

  8. 在matlab中ATB是什么意思,Matlab—线性代数入门

    <Matlab-线性代数入门>由会员分享,可在线阅读,更多相关<Matlab-线性代数入门(48页珍藏版)>请在人人文库网上搜索. 1.线性代数Matlab入门,作者刘进生太原 ...

  9. Mac版R语言入门(一)R语言入门操作

    文章更新于2023年1月29日: 视频教程--微信公众号:R语言数据分析与实践                      bilibili: R语言数据分析与实践 CSDN:ZhenniLi 第一集: ...

最新文章

  1. PowerDesigner中如何给字符串字段设置默认值 .
  2. 结对开发四------求一维无头数组最大子数组的和
  3. java代理模式_Java代理
  4. uuid生成_php如何生成 uuid(总结)
  5. TreeView中右击直接获取节点的方法
  6. Delphi 7 定义你自己的事件
  7. 程序员如何应对双十一购物的大流量冲击?
  8. 分析mysql慢查询_mysql慢查询的分析方法_MySQL
  9. Git 基础(八)—— Github 的使用(账号管理)
  10. 07向量的点积、数量积、两向量垂直的条件、投影与投影向量、向量的正交分解、几个不等式、用坐标计算数量积
  11. java log info乱码_跟光磊学Java开发-Java开发常用API的使用
  12. SQL Server提取字段中的所有数字
  13. poj 1823 Hotel 线段树,注意懒惰标记,不标记就会超时滴
  14. 开源项目:测试安卓设备摄像头的帧率
  15. Linux开机加载新内核,linux-kernel – 为什么加载内核地址,ramdisk在启动时很重要?...
  16. 【知识图谱】08KBQA问答系统(python+fuseki+jena)
  17. 牛客网暑期ACM多校训练营(第三场) J.Distance to Work 计算几何
  18. 记录问题/usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory 解决
  19. 028 《数据分析师养成宝典》读书笔记
  20. 绿卡日记:2020-11-20

热门文章

  1. Vissim11二次开发之C#---实现仿真时间内实施不同信号控制方案
  2. 论文一般分为哪几种结构
  3. 【喜讯】Apache DolphinScheduler 荣获 “2020 年度十大开源新锐项目”
  4. JAVA毕设项目沙县小吃点餐系统(java+VUE+Mybatis+Maven+Mysql)
  5. bean的加载-配置文件的解析
  6. 运筹学—运输问题与表上作业法
  7. dex2jar2.0 工具命令使用 及生成error.zip解决
  8. Makefile基础教程
  9. 05-什么是作用域链
  10. 阿里服务器部署及区块链币种同步