叶汉伟的博客

撸起袖子加油干

matlab矩阵的基本操作

一、创建矩阵

首先,我们需要学会创建矩阵,方法如下

1、一般矩阵

a=[2 3 5 2;6 3 4 5;2 5 6 3;3 5 7 8]

说明:a为矩阵名;矩阵内容用 “ [ ] ” 括起来;矩阵的每一行用 “ ; ” 隔开;每一行的各个元素之间用 “空格”或 “逗号” 隔开。

a =

     2     3     5     2
     6     3     4     5
     2     5     6     3
     3     5     7     8
2、元素全为 “ 1 ” 的矩阵(ones)
b=ones(i,j)
 其中b为矩阵名,i 和 j 为矩阵的维度,i 为行数,j 为列数
b=ones       %创建一个1*1矩阵,元素为1
b=ones(i)    %创建一个 i 维方阵
*元素为0的矩阵同理,函数为zeros(i,j)


3、单位矩阵(eye)

c=eye(i)
矩阵 c 为 i 维单位矩阵

例如

>>c=eye(3)

c =

     1     0     0
     0     1     0
     0     0     1
特殊地有如
>> c=eye   //返回1              

c =

     1

>> c=eye(2,3)  //返回主对焦线为1,其余元素为0

c =

     1     0     0
     0     1     0

二、基于一个矩阵的操作


首先创建一个矩阵A

A =

     2     8     6     3
     6     5     2     4
     7     9     3     8
     5     2     7     8

1、矩阵求和(sum)

(1)按列求和(对矩阵中所有的列分别求和),命令:
>> sum(A)
也可以表示为:
>> sum(A,1)
**其中参数“ 1 ”表示对矩阵的列进行操作

得到结果:

ans =

    20    24    18    23

(2)对第 i 到 j 行按列求和

>> sum(A(i:j,d:k),1)
** “ i : j "表示从第 i 行到第 j 行,接着还有一个参数 “ d : k ” 表示从第 d 到 k 列按列求和。如果A()中第二个参数为 “ : ” 时代表全部列均求和,如:
>> sum(A(2:4,1:3),1)

ans =

    18    16    12
>> sum(A(2:4,:),1)

ans =

    18    16    12    20

(3)按行求和,其操作与按列求和类似,只是将sum的第二个参数有“ 1 ” 改为 ” 2 “ %8如

//按行求和
>> sum(A,2)

ans =

    19
    17
    27
    22

//第 d 到 k 行求第 i 到 j 列的和
>> sum(A(2:4,1:3),2)

ans =

    13
    19
    14

>> sum(A(:,1:3),2)

ans =

    16
    13
    19
    14
(3)对矩阵整体求和
>> sum(A(:))
结果:
ans =

    85
2、对矩阵中每一个元素执行相同的运算

(1)四则运算

>> A+2

ans =

     4    10     8     5
     8     7     4     6
     9    11     5    10
     7     4     9    10
**减、乘、除运算同理

(2)三角函数

>> sin(A)

ans =

    0.9093    .9894   -0.2794    0.1411
 %2 -0.2794   -0.9589    0.9093   -0.7568
    0.6570    0.4121    0.1411    0.9894
   -0.9589    0.9093    0.6570    0.9894

**cos、tan、sec 等三角函数同%%7

(3)矩阵的转置,命令:

>> A'

ans =

     2     6     7     5
     8     5     9     2
     6     2     3     7
     3     4     8     8

3、改变矩阵中某一个元素的值

A(i,j)=m
其中 i 和 j 分别表示矩阵中的行和列,m为矩阵第 i 行第 j 列的新值。如:
>> A(2,3)=0

A =

     2     8     6     3
     6     5     0     4
     7     9     3     8
     5     2     7     8

矩阵第二行第三列的元素,由2变为0。


4、改变矩阵的维度扩展

(1)直接为矩阵维度之外的元素赋值扩展矩阵维度,除被赋值的新元素外,其余新增加的元素均默认为0。如:

>> A(5,5)=4

A =

     2     8     6     3     0
     6     5     2     4     0
     7     9     3     8     0
     5     2     7     8     0
     0     0     0     0     4
(2)矩阵串联也可以增加矩阵的维度(串联运算符 " [ ] ")
>> S=[A,A]

S =

     2     8     6     3     2     8     6     3
     6     5     2     4     6     5     2     4
     7     9     3     8     7     9     3     8
     5     2     7     8     5     2     7     8
>> S=[A;A]

S =

     2     8     6     3
     6     5     2     4
     7     9     3     8
     5     2     7     8
     2     8     6     3
     6     5     2     4
     7     9     3     8
     5     2     7     8

**水平串联用逗号,垂直串联连用分号。注意:水平串联的两个矩阵需要有相同的行数,垂直串联两个矩阵需要有相同的列数。










阅读更多
版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/qq_34966814/article/details/64923398
文章标签: matlab
个人分类: Matlab
想对作者说点什么? 我来说一句

matlab矩阵操作

2012年05月21日 3.08MB 下载

大连理工大学MATLAB讲义

2010年05月30日 206KB 下载

矩阵基本操作

2016年12月22日 23KB 下载

MATLAB函数全能速查宝典-part2

2015年10月10日 18.91MB 下载

Matlab基本操作

2010年04月22日 3.08MB 下载

MATLAB的数值计算

2011年04月22日 158KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭