我是靠谱客的博主 知性饼干,最近开发中收集的这篇文章主要介绍matlab数组与矩阵常用的快捷基本操作matlab数组与矩阵常用的快捷基本操作一、数组二、矩阵,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
matlab数组与矩阵常用的快捷基本操作
数组:一行or一列;矩阵:多行多列
文章目录
- matlab数组与矩阵常用的快捷基本操作
- 一、数组
- 1.初始化数组
- 2.数组基本操作
- 3.数组进阶操作
- 4.数组判断
- 二、矩阵
- 1.初始化矩阵
- 2.矩阵基本操作
- 3.矩阵进阶操作
- 4.矩阵运算
- 5.矩阵判断
一、数组
1.初始化数组
注:用array_+数字 命名该节例子。
array_1=zeros(10,1); %生成十行1列的0值
array_2=zeros(1,10); %生成一行10列的0值
array_3=1:1:10; %生成一行10列的1到10值
array_3=linspace(1,5,10); %生成一行线性间隔数组(从1开始到5结束,共10个元素等间隔)
2.数组基本操作
array_4=array_3'; %数组转置,结果为十行1列
array_5=array_4(1); %数组第一个值
array_5=array_4(end); %数组最后一个值
array_5=array_4(1:3); %对数组切片,数组第一个值到第3个值
3.数组进阶操作
circshift(array_4,3); %对列向量,向下滚动3个元素
circshift(array_3,[0,3]); %对行向量,向右滚动3个元素
fliplr(array_3); %对行向量,左右翻转
4.数组判断
isequal(array_3,array_3); %数组是否相等-法一(注:矩阵中含有NaN则不能使用)
max(abs(array_3(:)-array_3(:)))<1e-15; %数组是否相等-法二(注:小于某数看实际条件,该法更好)
二、矩阵
1.初始化矩阵
注:用matrix_+数字 命名该节例子。
matrix_1=zeros(3,7); %第一种初始化:3列7行,全0赋值
matrix_2=reshape(1:1:21,3,7); %第二种初始化:3列7行,先按列再按行递增的1到21个数字
matrix_3=rand(3,7); %生成3列7行,全随机赋值(一般测试使用)
matrix_4=ones(3,7); %生成3列7行,全1赋值
matrix_5=eyes(7,7); %生成7列7行对角矩阵,对角元全1赋值
matrix_6=NaN(3,7); %生成3列7行全NaN赋值
2.矩阵基本操作
matrix_row=matrix_2(:,1); %以matrix_2的第一列形成数组
matrix_ch=matrix_2(1,:); %以matrix_2的第一行形成数组
matrix_num=matrix_2(21); %以按列再按行递增的matrix_2的第21个位置的值
max(matrix_2); %返回矩阵每列的最大值数组,min同理为最小值,mean同理为平均值
max(max(matrix_2)); %返回该二维矩阵的最大值
3.矩阵进阶操作
%返回按每列升序排列的新矩阵
sort(matrix_2);sort(matrix_2,'ascend');
%返回按每列降序排列的新矩阵matrix_new,以及新矩阵每个元素在原矩阵的位置矩阵loc
[matrix_new,loc]=sort(matrix_2,'descend');
%返回按第3列升序排列的新矩阵,降序同上加入descend
sortrows(matrix_2,3);
[m,n]=size(matrix_2); %返回矩阵的尺寸=m列n行
length(matrix_2); %返回矩阵中max([m,n])长度
%返回矩阵中值=6的位置:ch1列row1行,若有相同值则返回的ch1、row1位一列数组
[ch1,row1]=find(matrix_2==6);
4.矩阵运算
x=[1,2,3;4,5,6]; %以1 2 3为第一行,以4 5 6位第二行的3列2行的矩阵
y=[1:3;4:6]; %同上
x+1;x+y; %矩阵对向量or矩阵相加,为每个元素对应相加,减号同理
x.*y; %矩阵点乘矩阵,每个元素对应相乘,得到新矩阵
x*y; %矩阵相乘,得到数字
x/y; %x矩阵右除y,等价x*y(逆),等价z*y=x
xy; %x矩阵左除y,等价x(逆)*y,等价z*x=y
x./y; %矩阵每个元素相除,为y分之x
x.y; %矩阵每个元素相除,为x分之y
x.^y; %矩阵每个元素相互乘方,为x的y次方
x^2; %矩阵每个元素对向量乘方,为x的2次方
5.矩阵判断
a=[];isempty(a); %矩阵是否为空
b=[1,2];isrow(b); %矩阵是否为行向量
c=[1;2];iscolumn(c); %矩阵是否为列向量
最后
以上就是知性饼干为你收集整理的matlab数组与矩阵常用的快捷基本操作matlab数组与矩阵常用的快捷基本操作一、数组二、矩阵的全部内容,希望文章能够帮你解决matlab数组与矩阵常用的快捷基本操作matlab数组与矩阵常用的快捷基本操作一、数组二、矩阵所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复