1.矩阵的创建
生成一个a行b列的矩阵。
clear;clcA = [1,2,3;4,5,6;7,8,9]%创建矩阵,其中;为换行B = 2.6:2:11.2%通过冒号创建数组格式为初始值:步长:最大值C = linspace(1,3,7)%通过linspace创建一维矩阵,3为第一个元素,3为最后一个元素,7为元素的个数,n默认个数为100,的等差数列D = logspace(2,5,8)%10^2到10^5之间生成8个差值相等的数E = ones(2)%构建一个n*n的1矩阵,ones(a,b,c,……)构建一个a*b*c的1矩阵,ones(size(A))构建一个和矩阵A同样大小的1矩阵F = zeros(2)%构建一个N*n的0矩阵,同onesG = eye(3)%构建一个n*n的单位矩阵,同onesH = magic(3)%构建一个魔方矩阵,每一行每一列之和相等I = rand(3)%构建一个n*n的矩阵,元素为0-1之间的随机数,同onesJ = randn(3)%构建一个元素为零均值,单位方差的正态分布随机数,同ones
2.矩阵的操作
2.1矩阵的部分删除
A = [1:3;4:6;7:9]%B = [A;10:12]%B在A的基础上加了一行B(:,2) = []%删除掉了B的第二列

2.2矩阵元素修改
clear;clcv1 = 1:3X1 = diag(v1,1)%将向量v放在方阵X1的主对角线往上一条,负数代表往下X2 = diag(v1)v3 = diag(X1,1)%代表取出X1的主对角线往上一条的对角线v4 = diag(X1)L = tril(X1,1)%取出X1的下三角部分,对角线为主对角线往上一条,其余为零M = triu(X1,1)%取出X1的上三角部分,对角线为主对角线往上一条,其余为零
2.3矩阵结构的修改
clear;clcA = magic(3)B = reshape(A,9,1,1)%9,1,1分别为行数,列数,页数rot90(A)%逆时针旋转90度rot90(A,2)%逆时针旋转90*2度fliplr(A)%左右翻转矩阵,flipud上下翻转矩阵
2.4矩阵元素的数据变换
clear;clcA = rand(4)floor(A)%向下取整ceil(A)%向上取整round(A)%四舍五入取整fix(A)%按接近零的方向取整[n,d] = rat(A)% A=n./dB = rem(A,2)%表示将矩阵除以模数2的余数
2.5矩阵下标引用
clear;clcA = magic(6)A(:)%将矩阵以列优先,合并成一个长的列向量A(2:3,3:6)%2-3行,3-6列的元素A([7:10,26:31])%A(:)中的第7-10和26-31个元素%matlab中的:可以表示所有,也可以表示到的意思


单下标,为A(:)中的顺序的编号
双下标为行列值
内部函数sub2ind可以完成两者间的转换
2.6矩阵信息的获取
clear;clcA = zeros(3,4)isempty(A)%是否为空矩阵isscalar(A)%是否为标量isvector(A)%判断矩阵A是否为向量issparse(A)%是否为稀疏矩阵B = eye(5,3)[m,n] = size(B)%获取矩阵在各维的长度c = numel(B)%获得矩阵元素的个数
3.矩阵运算
未完成。。。。。。
">



