matlab的矩阵常用操作方法

news2025/1/27 13:05:49

matlab中数据的基本格式是矩阵,行向量、列向量和标量都是矩阵的特例。矩阵可以是二维的,也可以是多维的。

(1)查找矩阵中的元素

①find函数

在matlab中,可以调用find函数在矩阵中查找满足一定条件的元素,常见的调用格式如下:

  • ind=find(X)
  • [m n]=find(X)

其中X为要查找的矩阵;ind为矩阵X中满足查找条件的线性索引值。因为在matlab 中,矩阵是按列存储的,ind的值表示元素在矩阵中按列存储时的位置。m和n是列向量,分别保存元素在矩阵中的位置的行下标和列下标。

例如

A=[1 2 3 4;5 6 7 8];
%查找A中大于3的元素,返回元素的索引
ind=find(A>3);

得到的结果如下: 

 

怎样理解呢?

也可以这样写 

A=[1 2 3 4;5 6 7 8];
[m n]=find(A>3);

那这个怎样理解呢? 

 

好了这就是find函数的理解和使用了

②ind2sub和sub2ind函数

这两个函数实现线性索引值和行、列下标之间的转换。调用的格式如下

  • [I,J]=ind2sub(size,IND)
  • IND=sub2ind(size,I,J)
A=[1 2 3 4;5 6 7 8];
ind=find(A>3);
[m n]=find(A>3);
[I J]=ind2sub(size(A),ind);
IND=sub2ind(size(A),I,J);

 

 (2)删除矩阵中的指定元素

若想删除矩阵中的指定元素,只需将这些元素赋值为空(“[ ]"),例如,假设A是m*n维的矩阵,可以使用如下命令删除矩阵中的指定元素:

A(sub2ind(size(A),i,j))=[] %删除A的第i行,第j列的元素
A(i,:)=[] %删除A的第i行的数据
A(i:j,:)=[] %删除A的第i行到第j行的数据
A(:,j)=[] %删除A的第j列的所有元素
A(:,i:j) %删除A的第i列到第j列的数据

例如

A=[1,2,3,4;5,6,7,8];
A(1,:)=[] %删除第1行的所有元素

 

 

A=[1,2,3,4;5,6,7,8];
A(:,1)=[] %删除A的第一列元素

 

对于矩阵中单个元素的删除,MATLAB只允许使用线性索引值来指定该元素。 

(3) 取得矩阵中的指定元素

用户可以使用如下方法来取得矩阵中某一(些)行或列的元素:

X=A(i,:) %取得A的第i行的数据,并赋值给变量X
X=A(i:j,:) %取得A的第i行到第j行数据,并赋值给变量X
Y=A(:,j) %取得A的第j列的数据
Y=A(:,i:j) %取得A的第i列到第j列的数据
Z=A(i:j,n:m) %取得矩阵第i行到第j行以及第n列到第m列之间的数据

(4)查询矩阵的大小

num=size(A) %返回矩阵的行数和列数,num是一个1*2的数组,第一个数值是矩阵的行数,第二个数值是矩阵的列数
num=length(A) %返回A的行数和列数的最大值,相当于max(size(A))
num=size(A,1) %返回矩阵A的行数
num=size(A,2) %返回矩阵A的列数

(5)取得矩阵中元素的最大值和最小值:max和min函数

C=max(A) %取得矩阵A中每一列的最大值,组成行向量返回给C
C=max(A,B) %取得矩阵A和B对应元素的最大值
C=max(A,[],dim) %取得矩阵每行或每列的最大值,dim=1表示每列的最大值组成的行向量,dim=2表示每行的最大值组成的列向量
%同理,min也有上面的三种用法

 例如

a=[2 3;3 6;4 9]
b=[1 4;4 5;5 8]
max(a)
min(a)
max(a,b)
max(a,[],2)
max(a,[],1)

 执行结果如下

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

#创作纪念日# 我的创作128天纪念日

我的创作128天纪念日 机缘收获日常成就憧憬 机缘 小升初时,我开始接触编程,进入了一个全新的世界。刚开始学习编程时,我只是对电脑的一些操作比较感兴趣,但慢慢地,我开始对编写程序、设计算法产生了浓厚的兴趣。在实践…

创新研报 | 如何激发中国半导体企业发展潜力从而获得竞争优势,领跑新一轮增长?

近年来,伴随网络化、信息化、智能化飞速发展,半导体的应用领域不断拓展,在全球经济及社会发展中的重要性与日俱增。与此同时,越来越多的国家纷纷加码半导体,各个国家在半导体价值链中拥有不同的竞争优势。目前&#xf…

AI-Prompt 1.0 版简介公测!你的AI提示词网站!

提示词(Prompt) 是什么? 在 AI 大模型中,一个 prompt 是一个输入文本,用于触发模型生成输出。例如,当我们向一个 AI 大模型提交需求时,我们的需求就是一个 prompt。 在介绍产品之前,…

C++:二叉搜索树(非平衡化)

文章目录 一.二叉搜索树(key_value模型)二.二叉搜索树的节点删除三.二叉搜索树类对象其他接口构造函数,析构函数和赋值运算符重载节点插入接口和节点查找接口key_value模型二叉搜索树类模板总体代码 四.未经平衡化的二叉搜索树的缺陷 一.二叉搜索树(key_value模型) 树的节点定…

华为OD机试真题B卷 JavaScript 实现【数据最节约的备份方法】,附详细解题思路

一、题目描述 有若干个文件,使用刻录光盘的方式进行备份,假设每张光盘的容量是500MB。 求使用光盘最少的文件分布方式,所有文件的大小都是整数的MB,且不超过500MB,文件不能分隔、分卷打包。 二、输入描述 每组文件…

mysql服务器启动和关闭

Windows 系统下启动停止 MySQL 服务的方式主要有以下两种: 通过计算机管理方式通过CMD命令行方式 备注: 测试数据库版本为MySQL5.7。 安装mysql服务器版本5.7成功,且加入系统变量成功之后,按照以下步骤启动/停止服务器。 一、通过计算机管…

Xubuntu22.04之绘制正弦波(一百七十八)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

测试人生 | 三十而已,何需惧怕!年薪40W+涨薪幅度超40%

关于我,普通二本,非计算机专业,培训出身,北漂,五年多的工作经验,做过外包,中间有过频繁的跳槽经历,手工点点点为主,最近确认了新Offer,远程办公,涨…

G - 1-n数组

第四次题组 [Cloned] - Virtual Judge (vjudge.net) 【题目描述】 给你一个数组一个a[n]组成n正整数。您可以对其执行操作。 在一个操作中,您可以替换数组的任何元素一个我​跟⌊/2​​⌋ 看看您是否可以多次应用该操作(可能操作为0) 来制…

Apache Commons CSV 基本使用

Apache Commons CSV 基本使用 文章目录 Apache Commons CSV 基本使用一、概述1、简介2、主要特点3、官方资料 二、基本使用1、引入依赖2、读取 .csv 文件文件内容读取文件 3、写入文件写入文件写入结果 一、概述 1、简介 Apache Commons CSV是Apache软件基金会的一个开源项目…

Android——认识Android (Android发展简介)(一)

如果想要学习好Android开发,首先需要能够熟练应用以下的几个知识: JavaSE : 理解面向对象,掌握网络通信,掌握集合,掌握IO操作,要懂得图形化界面swing。 JavaEE:也需要一定的了解,以…

mysql简单入门常见的语句使用

一、安装mysql 二、数据库操作 1、进入本地数据库 win r 运行cmd.exe 输入命令 mysql -uroot -p 敲回车;随后输入密码; -u用户名 -p密码; 1.1 连接远程数据库:mysql -h ip地址 -u 用户名 -p mysql -h 10.10.25.159 -u root -p root-h主机名…

git push 报错 error: src refspec master does not match any 解决

真是TN的邪了门了,今天在Gitee上创建了一个新项目,然后要把本地的代码push上去时,报了如下错误: ➜ *** git:(main) git push -u origin "master" error: src refspec master does not match any error: failed to pu…

Windows上通过CMake编译COLMAP源码操作步骤

COLMAP源码:https://github.com/colmap/colmap ,最新的稳定版本位于master分支,最新的开发版本位于dev分支,这里使用master分支进行编译,commit id为1555ff0。官方推荐使用vs2019,使用vs2022有一些已知bugs…

Metasploit介绍

Metasploit介绍 我们经常在电影里看到有关黑客的镜头,他们通常在几个屏幕上一顿操作就能轻松“黑“进各种系统。这样的场景是不是很熟悉,是不是很羡慕? 今天我来介绍一下Metasploit Framework,简称MSF。这个工具就可以做到“Hacki…

Qt5.12.6配置Android Arm开发环境(windows)

1. 安装jdk1.8 2.安装Android Studio 并安装 SDK 与NDK SDK Tools 选择 26.0.3 SDK Platform 选择 Android SDK Platform 26 NDK选择19版本 安卓ARM环境配置成功如下: JDK1.8 , SDK 26 , NDK 19 在安装QT时要选择 ARMv7(32位CPU)与ARM64-v8a(64位CPU) 选择支持android平台…

全国各个省份市区县明细数据

全国总共有23个省、5个自治区、4个直辖市、2个特别行政区。 此数据包含省、市、区、县数据,共2886个。——更新于2023年6月10日 费了不少时间,暂时应该没有比我更全的了~~~细致到区县了 包括台湾省:台北市,新北市,桃园市,台中市,台南市,高…

计算机网络-子网划分

计算机网络-子网划分与CRC差错校验 文章目录 计算机网络-子网划分与CRC差错校验IP地址的分类A类地址B类地址C类地址D类地址和E类地址和特殊IP地址子网掩码实战💪 IP协议是 TCP/IP体系中最主要的协议之一,也是最重要的互联网协议之一。 IP协议是32位&am…

ubuntu22.04.2安装onlyoffice(不更改默认端口版)

目录 一、配置阿里源 二、postgresql数据库 (一)安装postgresql (二)创建postgresql数据库和用户 三、安装 rabbitmq 四、安装nginx-extras 五、安装ONLYOFFICE Docs (一)Add GPG key &#xff08…

【html总结--详细版】

目录 一、html 常用的标签 二、列表分为有序列表、无序列表、自定义列表 有序列表: 无序列表: 自定义列表: 三、hr 四、特殊符号 五、div和span 六、图片的属性 七、超链接 八、table表格的基本结构 table的属性 tr的属性 td的属性…