Matlab基本知识

 🌈个人主页:羽晨同学

💫个人格言:“成为自己未来的主人~”  

%% Matlab基本的小常识
% (1)在每一行的语句后面加上分号(一定要是英文的)
a=3;
a=5;
% (2)多行注释:选中要注释的若干语句,快捷键Ctrl+R
% a=3;
% a=5% (3)取消注释:选中要取消注释的语句,快捷键Ctrl+T% clear可以清楚工作区的所有变量
clear
% clc 可以清除命令行窗口中的所有文本,让屏幕变得干净
clc% 所以大家在很多代码的开头,都会见到:
clear;clc % 分号也用于区分行
% 这两条一起使用,起到"初始化"的作用,防止之前的结果对新结果的影响%%输出和输入函数(disp和input)
%disp函数
disp('大家好,这里是Matlab基础讲解');
a=[1,2,3]
a=[1 2 3]
disp(a)
% 注意 disp这里是一定需要分号的
disp(a);
clear;clc
% matlab中两个字符串的合并有两种方法
% (1) strcat(str1,str2....,strn)
strcat('字符串1','字符串2')
% (2) [str1,str2,.....,str n]
['字符串' '字符串2']
['字符串1','字符串2']
% 一个有用的字符串函数:num2str 将数字转换为字符串
c=100;
num2str(c);
disp(['c的取值为' num2str(2)]);
disp(strcat('c的取值为',num2str(2)));
% input函数
% 一般我们会将输入的数、向量、矩阵、字符串等赋给一个变量
A=input('请输入A: ');
B=input('请输入B: ')
% 注意观察工作区,并体会input后面加分号和不加分号的区别
% 不加分号的自动输出了结果
%% sum函数
% (1)如果是向量(无论是行向量还是列向量),都是直接求和
E=[1,2,3];
sum(E)
E=[1;2;3]
sum(E)
% (2)如果是矩阵,则需要根据行和列的方向作区分
clc
E=[1,2;3,4;5,6]
% a=sum(x);%按列求和(得到一个行向量)
a=sum(E)
a=sum(E,1)
% a=sum(x,2);% 按行求和(得到一个列向量)
a=sum(E,2)
% a=sum(x(:)); % 整个矩阵求和
a=sum(sum(E))
a=sum(E(:))
clc
%% 基础: Matlab中如何提取矩阵中指定位置的元素
% (1)取指定行和列的一个元素(输出的一个值)
clc;A=[1 1 4 1/3 3;1 1 4 1/3 3;1/4 1/4 1/3 1/2 2; 3 3 3 1 3;1/3 1/3 2 1/3 1];
A
A(2,1)
A(3,2)
% (2)取指定的某一行的全部元素(输出的是一个行向量)
clc;A
A(2,:)
A(5,:)% (3)取指定的某一列的全部元素(输出的是一个列向量)
clc;A
A(:,1)
A(:,3)
% (4)取指定的某些行的全部元素(输出的是一个矩阵)
clc;A
A([2,5],:)
A(2:5,:)
A(2:2:5,:)
1:3:10
10:-1:1
A(2:end,:)
A(2:end-1,:)
% (5) 取全部元素(按列拼接的,最终输出的是一个列向量)
clc;A
A(:)%% size函数
clc;
A=[1,2,3;4,5,6]
B=[1,2,3,4,5,6]
size(A)
size(B)
% size(A)函数是用来求矩阵A的大小的,它返回一个行向量,第一个元素是矩阵的行数,第二个元素是矩阵的列数
[r,c]=size(A)
% 将矩阵A的行数返回到第一个变量r,将矩阵的列数返回到第二个变量
r = size(A,1) %返回行数
c = size(A,2) %返回列数%% repmat函数
% B = repmat(A,m,n):将矩阵A复制m*n块,即把A作为B的元素,B由m*n个A平铺而成
A=[1,2,3;4,5,6]
B=repmat(A,2,1)
B=repmat(A,3,2)%% Matlab中矩阵的运算
% MATLAB在矩阵的运算中,"*"号和"/"号代表矩阵之间的乘法与除法
A=[1,2;3,4]
B=[1,0;1,1]
A*Binv(B) % 求B的逆矩阵
B*inv(B)
A*inv(B)
A/B% 两个形状相同的矩阵对应元素之间的乘除法需要使用".*"和"./"
A=[1,2;3,4]
B=[1,0;1,1]
A.*B
A./B% 每个元素同时和常数相乘或相除都可以使用
A=[1,2;3,4]
A*2
A.*2
A/2
A./2% 每个元素同时乘法时只能用.^
A=[1,2;3,4]
A.^2
A^2
A*A%% Matlab中求特征值和特征向量
% 在Matlab中,计算矩阵A的特征值和特征向量的函数是eig(A)
A=[1 2 3;2 2 1;2 0 3]
% (1)E=eig(A):求矩阵A的全部特征值,构成向量E
E=eig(A)
% (2) [V,D]=eig(A):求矩阵A的全部特征值,构成对角阵D,并求A的特征向量构成V的列向量
[V,diag]=eig(A)%% find函数的基本用法
% find函数,它可以用来返回向量或者矩阵中不为0的元素位置索引
clc;X=[1 0 4 -3 0 0 0 8 6]
ind=find(X)
% 其有多种用法,比如返回前两个不为0的元素的位置
ind=find(X,2)
% 上面针对的是向量(一维),若X是一个矩阵(二维,有行和列),索引该如何返回
clc;X=[1 -3 0;0 0 8;4 0 6]
ind=find(X)
% 这是因为在Matlab在存储矩阵时,是一列一列存储的,我们可以验证一下
X(4)
% 假如你需要按照行列的信息输出该怎么办
[r,c]=find(X)
[r,c]=find(X,1)%% 矩阵与常数的大小判断运算
% 共有三种运算符,大于>;小于<;等于==(一个等号表示赋值,两个等号表示相等)
X=[1 -3 0;0 0 8;4 0 6]
X>0
X==4%% 判断语句
a=input('请输入考试成绩分数: ')
if a>=85disp('成绩优秀')
elseif a>60disp('成绩合格')
elsedisp('成绩不合格')
end

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/408886.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MinIO 企业级人工智能存储的数据和驱动器同等重要

为什么会这样&#xff1f;这是因为硬件故障发生在不同的级别。有一些中断会导致整个站点瘫痪。然后&#xff0c;会出现中断&#xff0c;导致集群中的一部分节点瘫痪。但是&#xff0c;在更精细的硬盘驱动器位级别也存在故障&#xff0c;这些故障需要复制本身无法提供的另一种类…

android studio 新建java工程, 安卓新建项目,android studio2024 如何新建java项目

主要解决&#xff0c;新增安卓工程&#xff0c;没有java选项 1. 点击左上角FIle -> New -> 2. 选择 no activity 选项&#xff0c; 然后next 3. langua 就可以选择java 了。name自己定义项目名称&#xff0c;项目存储地址&#xff0c;包名。 配置完成选择finish. 4. fin…

MyBatis XML配置文件(下)

MyBatis的开发有两种方式&#xff1a;1、注解 2、XML。使用MyBatis的注解方式&#xff0c;主要是来完成一些简单的增删改查功能。如果需要实现复杂的SQL功能&#xff0c;建议使用XML来配置映射语句&#xff0c;也就是将SQL语句写在XML配置文件中。 MyBatis XML开发的方式需要以…

面向对象02:构造器详解

本节内容视频链接&#xff1a;面向对象05&#xff1a;构造器详解_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV12J41137hu?p64&vd_sourceb5775c3a4ea16a5306db9c7c1c1486b5 构造器&#xff08;‌Constructor&#xff09;‌是一种特殊的方法&#xff0c;‌用于初始…

linux下的oracle启动命令

一、服务器断电后&#xff0c;手工启动oracle数据库步骤如下&#xff1a; 1、进入数据库服务器&#xff0c;切换到oracle用户,命令&#xff1a;su - oracle 2、启动数据库&#xff0c;命令&#xff1a; 1&#xff09; sqlplus / as sysdba 2) startup 3&#xff09;如果数据库已…

【Qt笔记】Qt界面显示时间

目录 一、前言 二、基本概念 三、代码实现 1. 获取本地时间&#xff0c;并将其转换成自己想要的格式 2.创建一个QLabel控件用于显示时间字符串 3.创建QTimer定时器更新时间 四、优化 1. 格式优化 1.1 初始化 1.2 获取星期 1.3 更改格式 1.4 定时器超时函数 1.5 …

代码随想录 | day 15 | 二叉树part03

完全二叉树的节点个数 方法一&#xff1a;可以用递归法遍历一遍左子树和右子树的个数之和再加1等于全部节点个数 class Solution { public:int getcount(TreeNode* cur){if(curNULL) return 0;int leftcount getcount(cur->left);int rightcount getcount(cur->right…

以简单的例子从头开始建spring boot web多模块项目(四)-多模块工具类

目的是为了验证主工程调用工具工程。 1、新建模块&#xff0c;名称为WebTool 同样为Maven Archetype&#xff0c;类型为 org.apache.maven.archetypes:maven-archetype-quickstart 2、修改pom.xml 增加spring-boot-starter的依赖。 <dependency><groupId>org.spri…

【科研绘图】【分条热力图】:附Origin详细画图流程 + 案例分析

目录 No.1 理解分条热力图 No.2 画图流程 1 导入数据&#xff0c;绘制图形 2 设置绘图细节 3 色阶控制 4 设置坐标轴 5 效果图 No.3 案例分析 1 案例一 2 案例二 No.1 理解分条热力图 分条热力图&#xff0c;基于数据映射和颜色编码&#xff0c;是在热力图的基础上进…

【Hot100】LeetCode—437. 路径总和 III

目录 1- 思路前缀和哈希表dfs 2- 实现⭐437. 路径总和 III——题解思路 3- ACM 实现 题目连接&#xff1a;437. 路径总和 III 1- 思路 前缀和哈希表dfs ① 前缀和 求二叉树的前缀和&#xff0c;每求一次用一个 sum 传参记录更新 ② 哈希表 key 为前缀和 &#xff0c;value…

RISCV汇编编程讲解

第一章 引言 为什么要讲riscv&#xff1f; riscv的特点&#xff1a; -诞生于顶尖学术机构&#xff1a;诞生于加州大学伯克利分校的体系结构研究院。吸引了大批的顶尖企业参与&#xff08;e.g. 谷歌、华为、高通、阿里巴巴为rsicv的发展提供了大量的资金支持和贡献了技术和人才…

Oracle Linux 7.9 安装minikube体验

1.环境信息 前置所需&#xff1a; 操作系统&#xff1a;Oracle Linux 7.9 虚拟机配置&#xff1a;CPU:4核 内存&#xff1a;4G 容器&#xff1a;docker 26.1.4 安装minikube后环境&#xff1a; minikube: v1.33.1 kubernetes:v1.23.3 minukube体验说明&#xff1a;使用Virtua…

flume--数据从kafka到hdfs发生错误

解决&#xff1a; #1.将flume自带的依赖删除 mv /opt/installs/flume1.9/lib/guava-11.0.2.jar /opt/installs/flume1.9/lib/guava-11.0.2.jar.bak #2.将hadoop的依赖发送到flume下 cp /opt/installs/hadoop3.1.4/share/hadoop/common/lib/guava-27.0-jre.jar /opt/installs/f…

【C++ Primer Plus习题】5.9

问题: 解答: #include <iostream> #include <cstring> using namespace std;#define SIZE 20int main() {string words[SIZE];string done "done";int count 0;while (true){cout << "请输入单词:" << endl;cin >> words…

中国发布首个AI集成Linux开源操作系统

B站&#xff1a;啥都会一点的研究生公众号&#xff1a;啥都会一点的研究生 AI圈最近又发生了啥新鲜事&#xff1f; 中国大模型市场迎来新格局&#xff1a;百度、商汤、智谱位列前三 国际数据公司&#xff08;IDC&#xff09;于首次发布了《中国大模型平台市场份额&#xff0…

NYX靶机笔记

NYX靶机笔记 概述 VulnHub里的简单靶机 靶机地址&#xff1a;https://download.vulnhub.com/nyx/nyxvm.zip 1、nmap扫描 1&#xff09;主机发现 # -sn 只做ping扫描&#xff0c;不做端口扫描 nmap -sn 192.168.84.1/24 # 发现靶机ip为 MAC Address: 00:50:56:E0:D5:D4 (V…

适用于应用程序安全的 11 大 DevSecOps 工具

DevSecOps&#xff08;开发者安全运营&#xff09;是指将安全最佳实践融入软件开发生命周期的过程&#xff0c;从而实现更好的安全结果。这是提供全面安全基础设施的重要方面。 市场格局&#xff1a;DevSecOps市场竞争激烈。该领域有数百家供应商提供工具&#xff0c;帮助组织…

虚幻5|AI行为树,跟随task(非行为树AI)

这个可以不需要行为树 1.打开ai的角色蓝图后&#xff0c;添加一个函数&#xff0c;命名为跟距离改变速度 并用tick调用 2.编辑函数

在VBA中调用Adobe Acrobat或Reader的命令行工具,实现PDF自动打印 (‾◡◝)

在VBA&#xff08;Visual Basic for Applications&#xff09;中自动打印PDF文件通常不直接支持&#xff0c;因为VBA本身是针对Microsoft Office应用程序&#xff08;如Excel、Word和PowerPoint等&#xff09;的编程语言&#xff0c;并不直接处理PDF文件。但是&#xff0c;你可…

【变化检测】基于Tinycd建筑物(LEVIR-CD)变化检测实战及ONNX推理

主要内容如下&#xff1a; 1、LEVIR-CD数据集介绍及下载 2、运行环境安装 3、Tinycd模型训练与预测 4、Onnx运行及可视化 运行环境&#xff1a;Python3.8&#xff0c;torch1.12.0cu113 likyoo变化检测源码&#xff1a;https://github.com/likyoo/open-cd 使用情况&#xff1a…