【Matlab】数组索引与逻辑索引

数组索引与逻辑索引

一、数组索引

单下标索引:针对向量的索引

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

%%索引一个元素

>> a(2)
ans = 2

%% 索引多个元素

>> a([2 3])
ans = 2 3

线性索引:针对矩阵的索引
Matlab将数组视为单列向量,其中每一列附加到前一列的底部,按照对单列向量的索引方式进行索引。

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

%% 索引第五个元素

>> A(5)
ans = 5

多下标索引:针对矩阵的索引

>> A = [1 2 3;4 5 6]
A =
1 2 3
4 5 6

%% 索引第二列元素

>> A(:,2)
ans = 2 5

%% 索引第二行元素

>> A(2,:)
ans = 4 5 6

%% 索引第一列与第二列元素,构成矩阵

>> A(:,[1 3])
ans =
1 3
4 6

二、逻辑索引

逻辑索引时,对应的逻辑数组中元素为1(Boolean为真)的位置被索引形成列向量。

>> A = [1 1 0;1 1 1;0 0 0]
A =
 
    1 1 0
    1 1 1
    0 0 0
>> B = logical(A)
B =
1 1 0
1 1 1
0 0 0
>> C = [2 3 4;5 6 7;9 10 8]
C =
2 3 4
5 6 7
9 10 8
>> C(A)
Error 
 
 >> C(B)
ans =
2
5
3
6
7

注意:逻辑数组与被索引数组要求同形即行数列数的维度对应,才是有意义的。

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值