一、特殊变量
(1)cell:元胞数组是一种包含名为元胞的索引数据容器的数据类型,其中的每个元胞都可以包含任意类型的数据。元胞数组通常包含文本列表、文本和数字的组合或者不同大小的数值数组。通过将索引括在圆括号 ()
中可以引用元胞集。使用花括号 {}
进行索引来访问元胞的内容。
%创建3X3的元胞数组
cell(3);
%创建3X4的元胞数组
cell(3,4);
%对元胞数组的某个元胞进行赋值或调用
E=cell(3);
E{1,3}=1
i=E{1,3}
(2)struct,结构体变量
struct('field',{value},'field2',{value}):field为某一属性,value为对应属性的值
%创建颜色与数量属性
x=struct('color',{'red','black','green'},'num',{1,2,3});
%调用属性的值,每个属性对位置的值
x(2)
%调用指定属性指定位置值
x(2).color
二、矩阵
二维矩阵的创建:a=[1,2,3;4,5,6]
其他矩阵的创建:
(1)eye:一维矩阵创建
eye(5):创建5x5的单位矩阵
eye(4,3):创建4X3的单位矩阵
eye(Size(A))创建与A维数相同的单位矩阵
a=[1,2;3,4;5,6];
eye(5)
eye(4,3)
eye(size(a))
(2) ones:创建全1矩阵,同上
(3)zeros创建全0矩阵,同上
(4)rand:创建在[0 1]区间内的随机矩阵
(5)diag(a)创建以一维向量a元素维对角的矩阵
(6)magic创建魔方矩阵,要求行元素总和等于列元素总和
三、矩阵元素修改
(1)矩阵的宽展:相同纬度矩阵进行宽展时,行列同时宽展D=[A,B],A/B为相同维度矩阵
A=[1 2; 3 4];
B=[5 6;7 8]
C=[9 10; 11 12]
b=5;
c=6;
%矩阵拓展
%D=[A,b,c]
%D=[A,B,C]
A=[A,B]
(2)矩阵元素删除:A(m,:)=[]/A(:,n)=[]删除A的m行/n列
A=[1,2,3;4 5 6]
A(1,:)=[]
A(:,2)=[]
(3)矩阵元素赋值:
A(m,n):对A的第m行第n列的元素赋值,
A(m,:)=[a,b....]:对m行进行赋值
A(:,n)=[a,b.....]对n列进行赋值
%测试1:
A=[1 2 3;4 5 6]
A(1,2)=44
%测试2:
A=[1 2 3;4 5 6]
A(1,:)=[11 22 33]
%测试3:
A=[1 2 3;4 5 6]
A(:,2)=[ 22 55]
(4)矩阵的运算*:前一个矩阵的列要与后一个矩阵的行相同才能进行叉乘.
相乘原则是,前矩阵的行乘以后矩阵的列,乘积的结果位置对应为现在的横列。
A=[1 2 3;4 5 6];
B=[1 2; 3 4;5 6];
C=A*B
D=B*A