MATLAB矩阵相关函数学习--中级函数

经过了初级函数的学习,我们对矩阵有了初步的了解,下面对矩阵中级函数尽兴学习。
矩阵元素的查找。find函数

clear all;
A=[4 0 5;0 6 8;9 9 9]
B=find(A)                  %返回非0元素的位置
C=find(A>=5)               %返回位置
D=A(find(A>=5))            %返回元素值
A(find(A==9))=1          %将A中等于9的元素值全部变为1

矩阵元素的排序。sort函数

clear all;
A=[3 0 4;0 2 1;5 4 7]
B=sort(A)               %   每一列从小到大排序
C=sort(A,2)             %   按照行排序
D=sort(A,'descend')     %   按照列降序  
E=sort(A,2,'descend')   %   按照行降序

矩阵元素的求和。sum函数和cumsum函数

clear all;
A=[2 2 1 1;3 3 3 3;1 1 1 1]
B1=sum(A)       %每一列的和
B2=sum(A,2)     %每一行的和
C1=cumsum(A)    %返回值为矩阵 列相加 新矩阵为该矩阵及以上行数所加之和   
C2=cumsum(A,2)  %返回值为矩阵 行相加 新矩阵为该矩阵及以上列数所加之和
D=sum(sum(A))    %矩阵所有行列相加总和

矩阵元素的求积。prod和cumprod函数,用法和求和用法一样,就不详细阐述

clear all;
A=[4 4 4 0;5 5 5 5;6 6 6 6]
B1=prod(A)
B2=prod(A,2)
C1=cumprod(A)
C2=cumprod(A,2)

矩阵元素的差分。diff函数,表示下一行/列与上一行/列的差值为多少,没进行一阶差分减少一行/列,

clear all;
A=[1 1 1 0;2 2 2 2;1 2 3 4]
B1=diff(A)              
B2=diff(A,2)    %每一列求2阶差分
B3=diff(A,1,1)   %列上进行1阶差分
B4=diff(A,1,2)   %行上进行1阶差分

矩阵的创建。仅对常用矩阵函数进行罗列

A = zeros(3)        %创建全0矩阵
B = ones(3)         %创建全1矩阵
C = eye(3)          %创建单位矩阵
D = rand(3)         %创建随机矩阵,随机范围为0~1
E = randn(4)        %创建标准正态分布矩阵,均值为0方差为1
F = magic(3)        %创建魔方矩阵,每行每列以及对角线相加数相等

求矩阵的行列式。det函数

clear all;
A=magic(5)
B=[2:4;5 5 5;3 3 3]
y1=det(A)
y2=det(B)

求矩阵的特征值。

clear all;
A=magic(3)
E=eig(A)     %求矩阵的全部特征值,是一个向量
[V,D]=eig(A)   %返回两个方阵,V的每一列是一个特征向量,D的对角线上的元素是特征值

求方程的根。

clear all;
p=[4 4 4 1]   %向量P是方程的系数,从高到低排  4x^3+4x^2+4x+1
A=compan(p)    %求伴随矩阵
x1=eig(A)      %求特征值   就是根   有3个根
x2=roots(p)     %另一种方法
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

big-moon

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值