当前位置: 首页 > news >正文

MATLAB的基础知识

matlab的基本小常识

        1. 在每行语句后面加上英文分号表示不在命令行窗口显示运行结果。

        a = 3;

        a = 5

        2. 多行注释快捷键,CTRL+R。

        3. 取消多行注释,CTRL+T。

        4. 清空工作区的所有变量使用clear。

        5. 清空命令行窗口的所有变量使用clc。 

        6. clc和clear一起使用,起到初始化的作用,防止之前的结果对新脚本文件(后缀名为.m的文件)产生干扰。

输入和输出函数

        输出函数disp()

        disp函数(display的缩写)是屏幕输出函数,类似c语言的printf函数。

        如果括号内的内容如果为字符串,单双引号不做区分,disp("太阳是我的指南针")。

        如果括号内的内容是向量(只有行或列)或者矩阵(既有行又有列),disp(变量名)。

        disp函数之后加不加分号都会输出结果。

向量和矩阵

        a = [1 2 3]

        a = [1,2,3]

%同一行的元素之间用逗号或空格分隔。

        a = [1;2;3]

%同一列的元素之间用分号分隔。

合并字符串的方法 

        1. strcat(str1, str2, ……, strn)

        2. ["str1" "str2"]  or ["str1", "str2"]

一个有用的字符串函数:num2str 将数字转换成字符串

c = 100

num2str(c)

disp(["c的取值为", num2str(c)])

or  disp(strcat("c的取值为", num2str(c)))

        输入函数input()

        一般我们会将输入的输、向量、矩阵或字符串等赋值给一个变量。

        A = input("请输入A:");

        B = input("请输入A:")

        % input函数加了分号,因此A变量不会在命令行窗口打印结果;而B变量就会打印结果。

求和函数sum

        1. 如果是向量(无论是列向量还是行向量),就直接求和。

        E = [1 2 3]

        sum(E)

        2. 如果是矩阵,需要根据行和列的方向来作区分。

        E = [1,2;3,4;5,6] 

        a = sum(E)  or  a = sum(E, 1)   %按列求和(得到一个行向量)。

        a = sum(E, 2)    %按行求和(得到一个列向量)。

        a = sum(sum(E))  or   a = sum(E(:))    %对整个矩阵求和。

        dim(维度)默认为1。

        dim = 1表示按照列。

        dim = 2表示按照行。

如何提取矩阵中的指定位置元素

E = [1,2,11;3,4,12;5,6,13;7,8,14;9,10,15]

1. 取指定行和列的一个元素

E(2,1)   %第二行第一列的元素

2. 取指定某一行的全部元素

E(2,:)   %输出第二行的全部元素(输出行向量)

3. 取指定某一列的全部元素

E(:,1)   %输出第一列的全部元素(输出列向量)

4. 取指定某几行的全部元素

E([1,2],:)   %只取第一行和第二行的全部元素

E(1:3,:)   %取第一行到第三行的全部元素

E(1:2:3,:)   %取第一行到第三行,从一开始每次递增两个单位,到三结束

%涉及到等差数列的语法 begin:d:end

E(2:end,:)   %取第二行到最后一行的全部元素

E(2:end-1,:)   %取第二行到倒数第二行的全部元素

5. 取全部元素(按列全部拼接成一列,最终输出一个列向量)

E(:)

size函数

        A = [1,2,3;4,5,6]

size(A)

%上放函数用来求矩阵A的大小,它返回一个行向量,第一个元素是矩阵的行数,第二个元素是矩阵的列数。

[r,c] = sizeof(A)

%将矩阵A的行数返回到第一个变量r中,将矩阵A的列数返回到第二个变量c中。

r = size(A,1)   %返回行数

c = size(A,2)   %返回列数

repmat函数

        A = [1,2,3;4,5,6]

B = repmat(A,m,n)

%将矩阵A复制m*n块,把A作为B的元素,B由m*n个A平铺而成

矩阵的运算 

        A = [1,2;3,4]

        B = [1,0;1,1]

%在矩阵的运算中," * "和" / "代表矩阵之间的乘法与除法。

        A*B        A/B

%逆矩阵 inv(A)

        A*inv(A) = 单位矩阵        %一个矩阵乘它的逆矩阵等于单位矩阵

        A/B = A*inv(B)        %A矩阵除以B矩阵等于A矩阵乘B的逆矩阵

%两个相同形状的矩阵对应元素之间的乘除法需要使用" .* "和" ./ "

        A.*B        A./B

%矩阵中每个元素同时乘或除以一个常数,可以用" * "、" / "也可以用" .* "、" ./ "。

%矩阵中每个元素同时乘方需要使用" .^ "

        A .^ 2 = A .* A

        A * A是矩阵乘法,不是乘方。

Matlab中求特征值和特征向量

% 在Matlab中,计算矩阵A的特征值和特征向量的函数是eig(A),其中最常用的两个用法:
A=[1 2 3;2 2 1;2 0 3]
E=eig(A);        %求矩阵A的全部特征值,构成向量E。

[V,D]=eig(A);        %求矩阵A的全部特征值,构成对角矩阵D,并求A的特征向量构成V的列向量。(V的每一列都是D中与之相同列的特征值的特征向量)

find函数的基本用法 

        find函数可以用来返回向量或矩阵中不为0的元素的位置索引。

        X = [1 0 4 -3 0 0 0 8 6]

向量:

        ind = find(X)   % 返回X向量中所有不为0元素的索引:1 3 4 8 9

        ind = find(X,2)   % 返回前两个不为0的位置索引:1 3

         X = [1 0 4;-3 0 0;0 8 6]

矩阵:

        因为在matlab中存储矩阵是一列一列存储的,所以返回的是一个列向量。

         ind = find(X)   % 返回X矩阵中所有不为0元素的索引:1 2 6 7 9(列向量)

        也可以分别返回行和列数

        [r,c] = find(X)   % 返回所有不为0的元素的行和列到r和c中

        [r,c] = find(X,1)   %只返回第一个不为0的元素

 矩阵与常数大小的判断运算

%共有三种运算符,分别是大于(>)、小于(<)和等于(==)。

X = [1 0 4;-3 0 0;0 8 6]

X > 0   %在矩阵中某个位置的元素如果满足判断条件就会在生成的新矩阵的原位置返回1,否则返回0,最终生成一个只有0和1的相同形状的矩阵。

 判断语句

%matlab中的判断语句,if所在行不需要冒号,语句的最后以end结尾,中间语句要缩进。

a = input("请输入考试成绩")

if a>=85

        disp("成绩优秀")

elseif a>=60

        disp("成绩合格")

else

        disp("成绩挂科")

end

相关文章:

MATLAB的基础知识

matlab的基本小常识 1. 在每行语句后面加上英文分号表示不在命令行窗口显示运行结果。 a 3; a 5 2. 多行注释快捷键&#xff0c;CTRLR。 3. 取消多行注释&#xff0c;CTRLT。 4. 清空工作区的所有变量使用clear。 5. 清空命令行窗口的所有变量使用clc。 6. clc和clear一起使…...

Redis-高级实战案例

文章目录 Redis集群崩溃时如何保证秒杀系统高可用1. 冗余与备份2. 故障检测与自动切换3. 降级策略4. 数据一致性5. 客户端缓存6. 异常处理与通知7. 测试与演练8. 服务降级与回滚Redis主从切换导致库存同步异常以及超卖问题主从切换导致的库存同步异常原因:解决方案:秒杀链路中…...

d3d12.dll 文件缺失如何解决?五种修复丢失问题的方法

d3d12.dll 文件缺失如何解决&#xff1f;它为什么会不见呢&#xff1f;今天&#xff0c;我们将探讨 d3d12.dll 文件的重要性、原因以及丢失时的解决策略。本文将全面介绍 d3d12.dll 文件&#xff0c;并提供五种修复丢失问题的方法。 d3d12.dll文件是什么的详细介绍 d3d12.dll …...

Linux下如何设置系统定时任务

在Linux系统中&#xff0c;用户可以使用cron工具来设置定时任务。cron是一个守护进程&#xff0c;用于在指定的时间间隔执行指定的命令或脚本。下面是在Linux系统中设置系统定时任务的步骤。 使用crontab命令编辑定时任务列表&#xff1a; crontab -e该命令会打开一个文本编辑…...

【React】JSX 实现列表渲染

文章目录 一、基础语法1. 使用 map() 方法2. key 属性的使用 二、常见错误和注意事项1. 忘记使用 key 属性2. key 属性的选择 三、列表渲染的高级用法1. 渲染嵌套列表2. 条件渲染列表项3. 动态生成组件 四、最佳实践 在 React 开发中&#xff0c;列表渲染是一个非常常见的需求。…...

写一个简单的兼容GET/POST请求的登录接口

本文目录 安装JDK17安装或者更新Intelij Idea 2024SpringBoot生成项目压缩包下载maven&#xff0c;idea添加maven写POST接口浏览器访问GET接口PostMan安装及访问POST接口 安装JDK17 参考&#xff1a;https://blog.csdn.net/tiehou/article/details/129575138 安装或者更新Int…...

【好玩的经典游戏】Docker环境下部署赛车小游戏

【好玩的经典游戏】Docker环境下部署赛车小游戏 一、小游戏介绍1.1 小游戏简介1.2 项目预览二、本次实践介绍2.1 本地环境规划2.2 本次实践介绍三、本地环境检查3.1 安装Docker环境3.2 检查Docker服务状态3.3 检查Docker版本3.4 检查docker compose 版本四、构建容器镜像4.1 下…...

物理机 gogs+jenkins+sonarqube 实现CI/CD

一、部署gogs_0.11.91_linux_amd64.tar.gz gogs官网下载&#xff1a;https://dl.gogs.io/ yum -y install mariadb-serversystemctl start mariadbsystemctl enable mariadbuseradd gittar zxvf gogs_0.11.91_linux_amd64.tar.gzcd gogsmysql -u root -p < scripts/mysql.…...

前端表格解析方法

工具类文件 // fileUtils.tsimport { ref } from vue; import * as xlsx from xlsx;interface RowData {[key: string]: any; }export const tableData ref<RowData[]>([]);export async function handleFileSelect(url: string): Promise<void> {try {const res…...

Leetcode 3227. Vowels Game in a String

Leetcode 3227. Vowels Game in a String 1. 解题思路2. 代码实现 题目链接&#xff1a;3227. Vowels Game in a String 1. 解题思路 这一题稍微分析一下之后就会发现&#xff0c;这个游戏有且只有一种情况Bob才能够赢&#xff0c;即原始字符串当中不存在元音字母的情况&…...

树莓派4B从装系统raspbian到vscode远程编程(python)

1、写在前面 前面用的一直是Ubuntu系统&#xff0c;但是遇到一个奇葩的问题&#xff1a; 北通手柄在终端可以正常使用&#xff0c;接收到数据 但在python程序中使用pygame库初始化时总是报错&#xff1a;Invalid device number&#xff0c;检测不到手柄 经过n次重装系统&am…...

vue上传Excel文件并直接点击文件列表进行预览

本文主要内容&#xff1a;用elementui的Upload 组件上传Excel文件&#xff0c;上传后的列表采用xlsx插件实现点击预览表格内容效果。 在项目中可能会有这样的需求&#xff0c;有很多种方法实现。但是不想要跳转外部地址&#xff0c;所以用了xlsx插件来解析表格&#xff0c;并展…...

OpenCV 像素操作—证件照换底色详细原理 C++纯手写实现

文章目录 总体步骤1.RGB转HSV2.找出要换的底色3.取反&#xff0c;黑白颠倒4.将原图像的非背景部分复制到新背景上 完整代码1.C纯手写版2.官方API版本 总体步骤 1.RGB转HSV 为什么一定要转为HSV 颜色空间&#xff1f; 将图像从BGR颜色空间转换为HSV颜色空间是因为HSV颜色空间更…...

tinygrad框架简介;MLX框架简介

目录 tinygrad框架简介 MLX框架简介 LLaMA​编辑 Stable Diffusion​编辑 tinygrad框架简介 极简主义与易扩展性 tinygrad 的设计理念是极简主义。与 XLA 类比,如果 XLA 是复杂指令集计算 (CISC),那么 tinygrad 就是精简指令集计算 (RISC)。这种简约的设计使得它成为添加…...

服务器重启了之后就卡在某个页面了,花屏,如何解决??

&#x1f3c6;本文收录于《CSDN问答解惑-专业版》专栏&#xff0c;主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&收…...

Hospital 14.6.0全开源医院管理预约系统源码

InfyHMS 具有 60 种功能和 9 种不同类型的用户类型&#xff0c; 他们可以登录系统并根据他们的角色访问他们的数据。 源码下载&#xff1a;https://download.csdn.net/download/m0_66047725/89580674 更多资源下载&#xff1a;关注我。...

C/C++樱花树代码

目录 写在前面 系列文章 C简介 完整代码 代码分析 写在后面 写在前面 C实现精美的樱花树&#xff0c;只需这100行代码&#xff01; 系列文章 序号目录直达链接1爱心代码https://want595.blog.csdn.net/article/details/1363606842李峋同款跳动的爱心https://want595.b…...

sklearn基础学习

1. 简介 1.1 什么是sklearn sklearn&#xff0c;或者更正式地称为scikit-learn&#xff0c;是一个基于Python的开源机器学习库。它建立在NumPy、SciPy和matplotlib之上&#xff0c;提供了简单而有效的工具用于数据挖掘和数据分析。sklearn支持监督学习和无监督学习算法&#…...

SpringBoot 自动配置原理

一、Condition Condition 是在 Spring 4.0 增加的条件判断功能&#xff0c;通过这个可以功能可以实现选择性的创建 Bean 操 作。 思考&#xff1a; SpringBoot 是如何知道要创建哪个 Bean 的&#xff1f;比如 SpringBoot 是如何知道要创建 RedisTemplate 的&#xff1f; …...

Redisson中RQueue的使用场景附一个异步的例子

RQueue 是一个基于 Redis 的分布式作业队列系统&#xff0c;它允许开发者在 Ruby 应用程序中实现异步任务处理和计划任务调度。由于 Redis 提供了高性能的内存数据结构存储&#xff0c;RQueue 可以快速地存储和检索队列中的任务&#xff0c;这使得它非常适合于高并发和低延迟的…...

别再乱用分支了!Flowable四种网关(排他/并行/包容/事件)实战选型指南

Flowable四大网关实战选型&#xff1a;从混乱到精准的决策艺术当你在设计一个请假审批流程时&#xff0c;是否遇到过这样的困惑&#xff1a;部门经理审批后需要同时通知HR和财务&#xff0c;但某些特殊情况下又需要跳过财务直接归档&#xff1f;这种看似简单的业务需求&#xf…...

C++中显示与隐式加载dll的使用与区别

一、什么是 DLL&#xff1f;DLL&#xff08;Dynamic Link Library&#xff09; 是 Windows 下的动态链接库&#xff0c;包含可被多个程序共享的函数、资源或类。使用 DLL 可以实现代码复用、模块化设计和插件机制。在 C 中&#xff0c;调用 DLL 中的函数有两种主要方式&#xf…...

机器学习结合基因无关通路映射:从临床数据挖掘新药靶点

1. 项目概述&#xff1a;当机器学习遇见代谢通路&#xff0c;如何从数据中“挖”出新药靶点&#xff1f;在生物医学研究的前沿&#xff0c;我们正面临一个核心矛盾&#xff1a;一方面&#xff0c;我们拥有海量的临床数据&#xff0c;比如血糖、血压、BMI等指标&#xff1b;另一…...

D3KeyHelper:暗黑3玩家的智能按键助手,告别重复操作疲劳

D3KeyHelper&#xff1a;暗黑3玩家的智能按键助手&#xff0c;告别重复操作疲劳 【免费下载链接】D3keyHelper D3KeyHelper是一个有图形界面&#xff0c;可自定义配置的暗黑3鼠标宏工具。 项目地址: https://gitcode.com/gh_mirrors/d3/D3keyHelper 你是否曾在《暗黑破坏…...

【深度解析】AI Coding 模型竞速:从 Claude Mythos 安全编码到 GPT-5.6 传闻,如何落地代码审查智能体

摘要 AI 编码模型正在从“代码补全”进入“复杂代码库理解、漏洞发现与自动修复”阶段。本文结合 Claude Mythos、Claude Opus 4.8 与 GPT-5.6 相关信息&#xff0c;解析新一代 Coding Agent 的技术趋势&#xff0c;并给出基于大模型 API 的代码安全审查实战方案。背景介绍&…...

举一个具体例子说明为什么索引不是越多越好,举具体字段

文章目录1. 核心舞台&#xff1a;笔记表 (t_note) 结构设计&#x1f6a8; 错误的操作&#xff1a;2. 结合具体字段&#xff0c;拆解三大翻车现场现场一&#xff1a;给 view_count&#xff08;浏览量&#xff09;加索引 —— 导致写放大&#xff0c;拖垮数据库现场二&#xff1a…...

基于Max78000与规则引导的音频数据集构建:边缘AI声音识别实战

1. 项目概述&#xff1a;当边缘AI遇见棕榈树里的“窃听者”在边缘计算和物联网设备大行其道的今天&#xff0c;我们常常面临一个核心矛盾&#xff1a;一方面&#xff0c;我们希望设备足够“聪明”&#xff0c;能实时识别并响应特定的声音模式&#xff0c;比如工厂里高压阀门的异…...

掌握Umi-OCR:5分钟上手开源免费离线文字识别工具

掌握Umi-OCR&#xff1a;5分钟上手开源免费离线文字识别工具 【免费下载链接】Umi-OCR OCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片&#xff0c;PDF文档识别&#xff0c;排除水印/页眉页脚&#xff0c;扫描/生成二维码。内置多国语言库。…...

独立开发者利用taotoken模型广场为不同任务选择性价比最优模型

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 独立开发者利用taotoken模型广场为不同任务选择性价比最优模型 对于独立开发者而言&#xff0c;在有限的预算内高效完成多样化的开…...

【C++】零基础入门 · 第 4 节:循环结构(while、for、do-while)

上一节我们学习了条件判断&#xff0c;这一节来学习循环结构。循环让程序能够重复执行某段代码&#xff0c;直到满足特定条件为止。C 提供了三种循环语句&#xff1a;while、for 和 do-while。 1. while 循环&#xff1a;先判断后执行 while 循环在每次执行前先检查条件&#x…...