Matlab

  • 基础知识
    • 续行书写
    • 设置当前文件夹
    • 函数总结
    • 向量与矩阵
    • 矩阵引用
    • 删除矩阵元素
    • 矩阵算法
    • 特殊矩阵
    • 矩阵变换
    • 矩阵求值
    • 矩阵特征值与特征向量
  • 字符串
    • 字符串比较
    • 字符串函数总结
  • 基本语法
    • if-elseif-else-end
    • switch
    • while
    • for
  • 函数文件的定义与调用
    • 函数定义
    • 函数调用
    • 匿名函数
  • EXCEL 数据
    • 读取
  • 绘图
    • 二维曲线
    • 基本绘图
    • 美化

基础知识

1. 末尾加不加“;”的区别a=10;  加分号不会显示ans结果,编写长串代码这样会显得界面简洁a=10
2. 注释: %
3. 不等于: ~=

续行书写

>>s = 1-1/2+1/3+...    % '...' 表示续行书写 用于单行代码太长时使用
1/4-1/5

设置当前文件夹

先建立一个文件夹,然后在命令行窗口输入

>> cd 建立文件夹的路径

函数总结

sin(p1/2) 弧度
sind(90) 角度
abs(x) 求实数的绝对值、复数的模、字符串的ASCII码
round 四舍五入规则取整
ceil 向上取整
floor 向下取整
fix 舍去小数取整
rem(m,10) 求m除以10的余数,其中m可以是矩阵A,即矩阵A中每个元素除以10 的余数
isprime(n) n为素数返回1
sqrt(x) 根号下
exp(x) e的指数
>>save mydata a x 将变量 a x 保存在mydata.mat 文件中
>>load mydata 下次打开文件,就可以载入这个.mat文件
linspace(a,b,n) 从a到b一共生成n个
D=sub2ind(size(A),[1,2;2,2],[1,1,;3,2]) 参数1:由矩阵A行数和列数组成的向量,size(A):返回的是矩阵行数和列数组成的向量;参数2:行下标;参数3:列下标。将矩阵中元素的行列数转换为序号数,比如获取行1列1的元素在矩阵中的序号为多少
[I,J]=ind2sub(S,D) S:由矩阵A行数和列数组成的向量;D:序号。将矩阵元素序号转换为对应元素的行列下标。例如:[I,J]=ind2sub([3,3],[1,3,5]) 表示对一个三行三列的矩阵的第1,3,5个序号的元素求其对应的行列下标
reshape(A,x,y) 将矩阵A维度改为x行y列 其余不变
find(表达式) 返回满足表达式的序号构成的 向量
clear 清除当前工作区的全部变量
lower(c ) 将大写字母转换成小写
upper( c ) 将小写转换为大写
str2double( c) 将字符串转换为数值
num2cell(0:34) 将 [0,1,2,…,34] 的 向量 转换为 数值 形式

向量与矩阵

1. 行向量a=[1 2 3 4]  中间用空格a(3) 取出第三个元素2. 列向量b=[1;2;3;4] 中间用分号3. 矩阵A=[1 2 3;4 5 6;7 8 9]A(1,2) 取出矩阵第一行第二个元素利用已经建立好的矩阵,拼接成更大的矩阵B = [-1 2 3;3 2 1;1 3 1]C = [A B;B A]复数矩阵D = A + B * i4.创建等差 “:”为创建 A=1,2,3,...,100A=[1:100]    等差=1x = 1:2:100 %生成1-100 步长为2 的行向量B=[1:2:100]  等差=2

矩阵引用

C(3 , :)    取出矩阵第三行所有值
A(i : i+m ; k:k+m) 取出i到i+m行 k到k+m列的元素
A(2:3,1:2:5)引用第2-3行 第1,3,5列元素
A(3,2)  第三行第二列元素
A(end,:) 取最后一行所有元素
A(:) 将矩阵每一列都堆在一起,形成新的一列的列向量
A([1,4],3:end) 第一行和第四行 从第三列到最后一列的所有元素
A = [1 2 3;4 5 6]
>>A(3)  % 取出序号为3 的元素
ans =  2  %矩阵按列存储元素

删除矩阵元素

将元素置空

>>A(:,[2,4])=[] %将第二和第四列的所有元素置空,即删除元素,矩阵的维度会缩小

**注:**置空与赋值为0 不一样,赋值为0 ,矩阵原有维度不变,置空后维度会缩小

矩阵算法

 A+2 每个元素➕2A/2 每个元素除以2A^2 矩阵A的平方

点运算
是指对应元素进行相关运算

A .* B 对应元素相乘
A * B 两个矩阵在矩阵意义下的计算

例如:

>> x=0.1:0.3:1;
>> y = sin(x) .* cos(x)
这里必须用 .*  因为假设 x 是列向量,那么 sin(x) 和 cos(x) 都是和 x 同维列向量,此时如果只用 * 而不用 .* 会导致两个列向量相乘,不满足矩阵向量相乘的前提

特殊矩阵

eye(n)          n维单位矩阵
diag([2 3 4 ])   对角线矩阵,主对角线元素为2 3 4
zeros(m,n)              全零矩阵
zeros(size(A))  产生与A同样大小的0矩阵
ones         全1 矩阵
rand      (0,1)均匀分布的随机矩阵
randn    均值为0 方差为1 的标准正态分布
magic(3)  三阶魔方矩阵
vander(1:5) 产生1 2 3 4 5 向量为基础的范德蒙矩阵
hilb(n)  n阶希尔伯特矩阵
compan(p)  伴随矩阵,其中p 为多项式的系数向量

矩阵变换

diag(A) 提取矩阵A主对角线 形成列向量
triu(A) 提取主对角线及以上的元素
A .’ 转置
A’ 共轭转置
inv(A) 求逆矩阵

矩阵求值

det(A) 行列式
rank(A)
trace(A)

矩阵特征值与特征向量

eig(A) 全部特征值
[X,D]=eig(A) D为特征值构成的对角阵,X为对应特征向量

字符串

>>s ='banana'  %单引号
>>s(1:3)
ans=
ban

字符串比较

按照ASCII码 逐个比较

>>'www0' >= 'W123'
ans=1 1 1 0

字符串函数总结

abs(s) 获取字符串s 中每个字符的ASCII码
char(s) 将ASCII码S 转换为字符串
strcmp(s1,s2) 比较字符串s1 s2是否相等
strncmp(s1,s2,n) 比较字符串s1 s2前n个字符是否相等
strcmpi(s1,s2) 忽略大小写,比较字符串s1 s2是否相等
strncmpi(s1,s2,n) 忽略大小写,比较字符串s1 s2前n个字符是否相等
findstr(s1,s2) 返回短字符串在长字符串中的 开始位置
strrep(s1,s2,s3) 将s1中所有s2替换为s3

基本语法

输入

>> A = input('请输入');

输出

>> s = 'Hello';
>> disp(s)

if-elseif-else-end

if 条件1语句1
elseif 条件2语句2
else语句3
end

switch

switch 数值
case value1语句1
case value2语句2
otherwise语句3
end

while

while 表达式语句
end

for

for n=1:2:100语句
end

函数文件的定义与调用

函数定义

在函数文件中

function 输出形参表 = 函数名(输入形参表)
函数体语句% 有多个形参时,用逗号分隔,多个输出形参之间除了逗号,还需要 方括号括起来,构成输出矩阵

例:
求半斤为r的圆的周长与面积

function [s,p] = fcircle(r)
s = pi *r*r;
p=2*pi*r;

函数调用

[输出实参表]=函数名(输入实参表)
>>[s,p] = fcircle(10) % 调用并传入 r=10 实参

匿名函数

>>f = @(x,y)x^2+y^2      %别名 = @ (参数)表达式
>>f(3,4)
ans =
25

EXCEL 数据

读取

information=xlsread('1.xlsx')          读取excel表中 全部 数据信息
information=xlsread('1.xlsx','B2:D4')  读取excel表中B2:D4表格区域数据信息

绘图

二维曲线

折线

>>x=[2,3,1,3];
>>y=[1,3,1,1];
>>plot(x,y)

基本绘图

1. plot(x,y)
2. hold on plot(x1,y1)plot(x2,y2)hold off% hold on/off 是把两个曲线放在一个图中,不然只会绘制出x2,y2的图
3.subplot() 在一个figure上放多个plots -> 05初阶绘图1:11:36

美化

1.plot(x,y,'ok-')     绘制线条是圈圈黑色实线
2.plot(x1,y1,'ok-',x2,y2,'sb--',x3,y3,'dr:')    一幅图中绘制多个 legend('第一条曲线名称','第二条曲线名称','第三条曲线名称')   加图注,不然分不清哪条曲线是啥
3.title(‘图名称’)
4.xlabel(‘x轴名称’)ylabel(‘y轴名称’)

matlab 学习记录相关推荐

  1. Matlab学习记录 1

    文章目录 Matlab学习记录 使用帮助文档 Matlab读取CSV文件 MATLAB查看变量的类型 Matlab 提取矩阵 某一行 或者 某一列 的方法 mic的计算 矩阵下标从1开始 矩阵转置 获 ...

  2. Matlab学习记录-矩阵的生成

    Matlab学习记录-矩阵的生成 matlab中生成矩阵有两种方式: 1.中括号加分号. 中括号表示矩阵,分号表示分行:每一行之间的元素可以用逗号分开也可以用空格分开: 例如 a=[1 2 3; 4 ...

  3. Matlab——学习记录篇1番外篇——hold on与hold off的区别

    重点重点!!!!!!!本人使用的Matlab版本是R2021b,如果下面代码在别的版本运行之后有bug显示的话,需要自己到百度寻找相应的函数把错误的地方替换 继上一篇学习记录篇1,编程的时候一直对ho ...

  4. 一时兴起之matlab学习记录

    是学习记录,会有错误的地方 安装的话看其他文章把 小操作 查看历史命令 在输入命令的地方,按下↑的方向键即可 模糊查找使用过的命令 在输入命令的地方,输入一个字母,按下↑会弹出一个以输入字母开头的历史 ...

  5. matlab学习记录之基本操作整理

    文章目录 一些常用命令 数据结构相关 数值,比较,运算 变量初始化 画图操作 画图线的颜色,线的形式,符号形式和图例 一些常用命令 clc清空命令窗口内容,clf清空当前图像窗口中的内容,clear清 ...

  6. matlab中quat2angle,matlab 学习记录

    (1)元胞数组的创建 a={'matlab',20;ones(2,3),1:10}                                        %创建方法一 b=[{'matlab' ...

  7. Matlab学习记录:常用模块

    1.假如你用的2019版本,导出的模型不能用到比2019版本低的matlab软件,此时可以通过以下操作导出别的版本的文件,就可以在低版本软件下打开. 2.模型配置文件 新建一个脚本 运行完之后,在保存 ...

  8. matlab学习记录

    %矩阵 a=[1,2,3;4,5,6;7,8,9] %在Matlab在存储矩阵时,是一列一列存储的 a(3) %位置3的元素(竖着数) a(2,1) %a第2行第1列个元素 b=[1,1,1;2,2, ...

  9. MATLAB学习记录day02

    1.randn函数-生成正态分布随机数 参考链接: randn函数官网说明. Y=randn(n) 生成一个n×n随机矩阵,其元素服从均值为0,方差为1的标准正态分布. Y=randn(m,n) 生成 ...

最新文章

  1. torch topk
  2. 程序员面试题精选100题(12)-从上往下遍历二元树[数据结构]
  3. 走向AI摄影终极之路 AVA数据集后时代与发展?
  4. 01 | Spring Data JPA 初识
  5. 考研【研究所和高校的区别、全国375所独立于高校系统之外的 “研究生所”】
  6. thinkphp用来做什么项目_用蜂蜜做的饮料有哪些?蜂蜜可以用来做什么饮料?
  7. VS2008下配置WTL开发环境
  8. SSM框架的基本概念
  9. 分寸:切记别把话说得太死 — 《别输在不会表达上》
  10. springboot 注册服务注册中心(zk)的两种方式
  11. Boot Camp 驱动
  12. 微正指纹识别算法MZFinger5.0
  13. 于娟的忠告----生命只有一次,活着才是王道啊!!!
  14. Elasticsearch:Elasticsearch 查询示例 - 动手练习(一)
  15. python npv 计算公式_PMP知识点总结 -- 净现值(NPV)
  16. 凡科建站产品体验报告
  17. SSH原理与运用:远程登录
  18. Unity3D个人作品展示(Awakening觉醒森林)
  19. 设计模式之禅《一》 大旗不挥,谁敢冲锋 ——6大设计原则
  20. TemptConvert.py

热门文章

  1. 利用Python进行数据分析(学习笔记)
  2. 快速排序(附优化方案)
  3. Telerik UI for WPF 2023 R1
  4. 如何写出漂亮的 数字字体
  5. 让管理员将所有服务器连接到一台显示器,信息技术基础模拟题
  6. 优质资源很难找?你想要的优质资源都在些网站了,难怪不容易找
  7. 2022年中小企业如何薅云羊毛?
  8. Android 文件读写最全解析
  9. 个人总结面试笔试C语言、嵌入式相关基础知识点
  10. QT学习笔记(三)——vs2019+Qt实现打开影像并以鼠标为中心用滚轮控制图片缩放