我有一个包含已排序字符串列表的向量。我想知道向量变化的索引号。以下是一个明显的例子。我真的不太习惯使用MATLAB。在我的脑海里,我只是想着使用一个循环。我想知道是否有更好的方法使用MATLAB做到这一点?
Vector
ABC
ABC
ABC
ABC
MNK
MNK
MNK
PLO
PLO
所以我想知道ABC是1:4,MNK是5:7&巴解组织是从8:9
答案 0 :(得分:5)
一种方法 -
%%// Input
a1 = {
'ABC'
'ABC'
'ABC'
'ABC'
'MNK'
'MNK'
'MNK'
'PLO'
'PLO'};
[val,x2] = unique(a1,'first');
[~,x12] = unique(a1); %%// By default takes the last unique value
out = [val num2cell(x2) num2cell(x12)]
输出 -
out =
'ABC' [1] [4]
'MNK' [5] [7]
'PLO' [8] [9]