Matlab学习——基本操作与矩阵输入

一、基础操作

1. 清除MATLAB里面的valuable

clear valuable名字

2. MATLAB里面的keyword

pi —— 圆周率π
Inf —— ∞
NaN —— not a number
eps —— 2.2204e-016(无穷小)
ans —— 变量结果存储
i,j —— 复数

3. MATLAB里面的priority

valuable > building function

所以不要将valuable定义为function的name

错误示例:

cos = 'abcdef'
cos(3)
输出:c
此时的cos不再是function,而是valuable

4.format用法

>> format long
>> pi
ans = 3.141592653589793

>> format short
>> pi
ans = 3.1416

>> format shortE
>> pi
ans = 3.1416e+00

>> format longE
>> pi
ans = 3.141592653589793e+00

>> format rat   变为有理数输出
>> pi
ans = 355/113   

>> format bank  保留两位输出
>> pi
ans = 3.14

5.MATLAB其他小技巧

clear —— 清除某一个变量
>>clear a   清除a这个valuable

clc —— 把MATLAB的计算页面全部清除

who —— 显示当前的valuable信息

whos —— 显示当前的valuable详细信息

二、向量与矩阵的输入

行之间用空格隔开,列之间用分号隔开

1.向量的输入

>> a = [1 2 3]
a =
     1     2     3

>> b = [2;3;4]
b =
     2
     3
     4

>> a*b
ans =
    20

>> b*a
ans =
     2     4     6
     3     6     9
     4     8    12

2. 矩阵的输入

>> c = [1 2 3;4 5 6;7 8 9]
c =
     1     2     3
     4     5     6
     7     8     9

3.矩阵的元素提取

>> c = [1 2 3;4 5 6;7 8 9]
c =
     1     2     3
     4     5     6
     7     8     9

方法1:
>> c(3)   矩阵是从上到下,从左到右一次编号,括号里面的数字表示编号
ans =
     7
 
>> c([1 3 5])
ans =
     1     7     5

>> c([1 3;1 3])
ans =
     1     7
     1     7

方法2:
>> c(1,2) 逗号前为行数,逗号后为列数
ans =
     2

>> c([1 3],[1 3]) 逗号前为行数,逗号后为列数,结果是两者的交集
ans =
     1     3
     7     9

4. 矩阵元素的替换

>> c
c =
     1     2     3
     4     5     6
     7     8     9

>> c(1,2)=100
c =
     1   100     3
     4     5     6
     7     8     9

5.等差矩阵的输入

>> e = [1:1:5]   第一个数字表示等差数列的首相,第二个数字表示等差数列的差值,第三个数字表示末相
e =
     1     2     3     4     5

>> d = [1:5]  如果差值为1可以省略
d =
     1     2     3     4     5


>> f = [1:2:5]
f =
     1     3     5

>> g = [1:5;1:2:9;1:3:13]
g =
     1     2     3     4     5
     1     3     5     7     9
     1     4     7    10    13

6. 如何消去矩阵的某一行或者某一列

>> c
c =
     1     2     3
     4     5     6
     7     8     9

>> c(1,:)=[]  消去某一行
c =
     4     5     6
     7     8     9

>> c(:,1)=[]  消去某一列
c =
     5     6
     8     9

7.矩阵的合并

>> a2 = [1 2 3];
>> a3 = [4 5 6];
>> a4 = [a2 a3]

a4 =
     1     2     3     4     5     6

>> a5 = [a2,a3]
a5 =
     1     2     3     4     5     6

>> a6 = [a2 ; a3]
a6 =
     1     2     3
     4     5     6

8. 矩阵的四维运算

>> aa = [1 2 3;4 5 6;7 8 9]
aa =
     1     2     3
     4     5     6
     7     8     9

>> bb = [1 2 3;4 5 6; 7 8 9]
bb =
     1     2     3
     4     5     6
     7     8     9

>> aa+bb
ans =
     2     4     6
     8    10    12
    14    16    18

>> aa-bb
ans =
     0     0     0
     0     0     0
     0     0     0

>> aa*bb
ans =
    30    36    42
    66    81    96
   102   126   150

>> aa/bb
警告: 矩阵接近奇异值,或者缩放错误。结果可能不准确。RCOND =  1.652118e-18。 
ans =
     1     0     0
     0     1     0
     0     0     1

>> aa.*bb  .*是指每一项逐个计算,和矩阵加法的运算方式一样
ans =
     1     4     9
    16    25    36
    49    64    81

>> aa./bb  ./是指每一项逐个计算,和矩阵加法的运算方式一样
ans =
     1     1     1
     1     1     1
     1     1     1

>> cc=2;
>> aa+cc  矩阵和实数相加是每一项都加这个实数
ans =
     3     4     5
     6     7     8
     9    10    11

>> aa-cc  矩阵和实数相减是每一项都减这个实数
ans =
    -1     0     1
     2     3     4
     5     6     7

>> aa*cc  矩阵和实数相乘是每一项都乘这个实数
ans =
     2     4     6
     8    10    12
    14    16    18

>> aa/cc  矩阵和实数除加是每一项都除这个实数
ans =
   0.500000000000000   1.000000000000000   1.500000000000000
   2.000000000000000   2.500000000000000   3.000000000000000
   3.500000000000000   4.000000000000000   4.500000000000000

>> aa'  矩阵的转置
ans =
     1     4     7
     2     5     8
     3     6     9

9. 几种常见的特殊矩阵

>> eye(3)
ans =
     1     0     0
     0     1     0
     0     0     1

>> zeros(3)
ans =
     0     0     0
     0     0     0
     0     0     0

>> ones(3)
ans =
     1     1     1
     1     1     1
     1     1     1

>> zeros(3,4)
ans =
     0     0     0     0
     0     0     0     0
     0     0     0     0

>> ones(3,4)
ans =
     1     1     1     1
     1     1     1     1
     1     1     1     1

>> diag([1 2 3])
ans =
     1     0     0
     0     2     0
     0     0     3

10. 矩阵的一些辅助功能

>> dd = [1 2 3;0 5 6;7 0 9]
dd =

     1     2     3
     0     5     6
     7     0     9

>> find(dd==6)  查找矩阵中等于6的元素的序号
ans =
     8

>> sort(dd)  将矩阵的每一列按从小到大的顺序排列
ans =
     0     0     3
     1     2     6
     7     5     9

>> sortrows(dd) 将矩阵每一行按第一列的元素大小进行排列
ans =
     0     5     6
     1     2     3
     7     0     9

>> size(dd)  输出矩阵的行数 列数
ans =
     3     3

>> length(dd) 输出矩阵的列数
ans =
     3

>> max(dd) 找出矩阵每一列的最大值
ans =
     7     5     9

>> max(max(dd))  找出矩阵的所有元素的最大值
ans =
     9

>> min(dd) 找出矩阵每一列的最大值
ans =
     0     0     3

>> min(min(dd)) 找出矩阵的所有元素的最大值
ans =
     0

>> sum(dd)  算出矩阵每一列的和
ans =
     8     7    18

>> mean(dd) 算出矩阵每一列的平均值
ans =
   2.666666666666667   2.333333333333333   6.000000000000000

>> mean(dd)' 即可算出矩阵每一行的平均值

你可能感兴趣的:(matlab,矩阵,线性代数)