How can I change the label for my elements with same name?

조회 수: 4 (최근 30일)
DulceEien
DulceEien 2021년 8월 12일
댓글: DulceEien 2021년 8월 12일
How can I count the the strings with the sabe value and then add them in another ID with the increasing number for the elements with the same label
For example I have the next vector
A = {'1_01';'1_01';'1_01';'1_02';'1_02'}
and the result should be this
B = {'1_01-1';'1_01-2';'1_01-3';'1_02-1';'1_02-2'}
str1 = '-';

채택된 답변

Chunru
Chunru 2021년 8월 12일
A = {'1_01';'1_01';'1_01';'1_02';'1_02'};
uA = unique(A);
B = A;
for i=1:length(uA)
idx = find(strcmp(A, uA(i)));
for j=1:length(idx)
B{idx(j)} = sprintf('%s-%d', B{idx(j)}, j);
end
end
%B = {'1_01-1';'1_01-2';'1_01-3';'1_02-1';'1_02-2'}
B
B = 5×1 cell array
{'1_01-1'} {'1_01-2'} {'1_01-3'} {'1_02-1'} {'1_02-2'}

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 String Parsing에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by