How do I replace elements of an array with letters?

2 次查看(过去 30 天)
Hi, I have an array called 'labels_I03' which is filled with zeros, and I am trying to replace the elements of this array with either 'N' or 'A' based on whether the index of the array element is part of a separate vector called 'abnormal_cycles_I03'. I am currently using a 'for' loop as shown below, but this does not seem to be working. It just returns an array full of zeros. Any suggestions would be greatly appreciated, thanks in advance.
labels_I03 = categorical(zeros(1, number_cycles));
abnormal_cycles_I03 = [128];
for i = number_cycles - 1
if ~ismember(i, abnormal_cycles_I03)
labels_I03(i) = 'N';
else
labels_I03(i) = 'A';
end
end

采纳的回答

Adam Danz
Adam Danz 2021-1-23
编辑:Adam Danz 2021-1-26
Sounds like you're describing this,
number_cycles = 10;
labels_I03 = categorical(repmat({'N'},1,number_cycles)); % set all as N
abnormal_cycles_I03 = [2,4,9]
abnormal_cycles_I03 = 1×3
2 4 9
labels_I03(abnormal_cycles_I03) = categorical({'A'}) % fill in A's
labels_I03 = 1×10 categorical array
N A N A N N N N A N

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Numeric Types 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by