第三章 MATLAB矩阵的操作的目录【向量元素的引用】

向量元素的引用有两种:

(1)提取向量中的单个元素

(2)提取向量中的多个元素

可以利用向量中包含的元素个数来描述一个向量的大小。

在MATLAB中,使用length函数或numel函数来计算向量中包含的元素个数。

向量的元素

a1

a2

a3

......

an

索引(下标)

1

2

3

n

在MATLAB中,向量的索引是从1开始的【最大索引就是元素的个数】

(1)单个元素引用

a(ind)【小括号中的ind就是提取的对应元素的索引】注意:创建向量用中括号,提取元素用小括号

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

a(1)

ans=1

a(8)

ans=8

a(11)  %索引超出数组元素的数目(10)

索引超过数组元素的数量。索引不能超过10.

a([])  %如果是提取空向量的话,结果也为空。

另外,ind取成0、负数或者小数。a(0)、a(-1)、a(1.5),MATLAB也会报错:“数组索引必须为正整数或逻辑值”。

(2)多个元素引用

利用向量的索引来同时提取多个位置的元素,只需要将ind设置为一个向量,ind中放入想要提取的元素的索引,然后使用a(ind)命令即可。

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

ind=[1 3 5 7 9];

a(ind)

ans=1×5

1 3 5 7 9

%也可以简写成:a([1 3 5 7 9])

ans=1×5

1 3 5 7 9

注意到:1:2:9=[1 3 5 7 9]

a(1:2:9)  %提取a中奇数位置的元素

ans=1×5

1 3 5 7 9

a(2:2:10)  %提取a中偶数位置的元素

或者

ind=2:2:10;

a(ind)

ans=1×5

2 4 6 8 10

%对于同一个位置的元素,可以提取多次

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

ind=[1 2 2 3 3 3];

a(ind)  %熟悉的话可以直接写成a([1 2 2 3 3 3])

ans=1×6

1 2 2 3 3 3

a(5 6)

无效表达式,请检查缺失的乘法运算符、缺失或不对称的分隔符或者其他语法错误,要构建矩阵,请使用方括号而不是圆括号。

正确表达式:a([5 6])

技巧:使用end索引

适用于不知道向量a中有多少个元素,也不想使用length函数或者numel函数来计算向量中元素的个数,这个时候可以用一个特殊的关键词:end【end用来替代向量的最后一个索引】

a([5 6 7 8 9 10])

ans=1×6

5 6 7 8 9 10

%访问a中第五个至最后一个元素,那么可以直接使用

a(5:end)

ans=1×6

5 6 7 8 9 10

%还可以对end进行计算,例如要访问a中第五个至倒数第三个元素

a(5:end-2)

ans=1×4

5 6 7 8 

%易错点:如果使用了end,就不能先将要取元素的索引赋值给ind,然后再调用a(ind).

%ind=5::end

%a(ind)

%提取a中奇数位置的元素

a(1:2:end)

ans=1×5

1 3 5 7 9

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值