数组索引
双下标索引
- 方法
数组名(所在行,所在列)
单下标索引
- 方法
数组名(所在序列)*列优先排序
双下标索引转换为单下标索引
- 方法
单下标索引=sub2ind(size,m,n)
size数组大小:size(数组名)
单下标索引转换为双下标索引
- 方法
[行,列]=ind2sub(数组大小,单下标索引)
数组大小:size(数组名)
数组扩展
cat函数
- 方法
扩展结果=cat(标识,数组1,数组2,···)
标识:1或2(1是列组合,2是行组合)
vertcat函数
- 方法
扩展结果=vertcat(数组1,数组2,···)
相当于:cat(1,组合数组···)
horzcat函数
- 方法
扩展结果=horzcat(数组1,数组2,···)
相当于:cat(2,组合数组···)
块操作
repmat函数
- 方法
数组B=repmat(数组A,m,n)
数组A,重复m行,n列
blkdiag函数
- 方法
数组D=blkdiag(数组A,数组B,数组C,···)
kron函数
- 方法
数组c=kron(数组A,数组B)
对应位置上A的值去乘B的每一个元素
索引扩展
直接指定当前数组外的一个位置,并对其进行赋值。
确保数组以最小代价完成扩展
数组裁剪
罗列序号
- 直接保留的序号罗列出来
裁剪结果数组=原数组(保留的行,保留的列)
数组B=数组A([1,2],[4,5])
裁剪数组A的1到2行的4到5列
冒号裁剪
- 区间
m:n
(m:初始值,n:终值值)(上面的A([1,2],[4,5])
就可以换成a(1:2,4:5)
) - 等差序列
m:k:n
(m:初始值,k:等差值,n:终止值) - 全部
冒号:
(当前索引位置所有能够取得的值,所有行,所有列) - 整行整列
格式:数组(要删除的行,:)=[]
或数组(:,要删除的列)=[]