How to replace a double in a array with a string (cell)?

I have a matrix of alternating 1s and 0s. Such as A = 1 0 1 0 1 0 0 1 0 1 0 1
I want to replace the "1" with a string called "[apple]" including the brackets.
How should I do this? It keeps giving me errors.

回答(2 个)

A = [1 0 1 0 1 0 0 1 0 1 0 1];
Ac = num2cell(A);
Ac(A==1) = {'[apple]'};
If you wanted to replace 1 with [apple] and 0 with something else you could do
str_table = {'[orange]', '[apple]'};
Ac = str_table(A+1);
A = [1 0 1 0 1 0 0 1 0 1 0 1];
out = cell(size(A));
out(A>0) = {'[apple]'};

类别

帮助中心File Exchange 中查找有关 Characters and Strings 的更多信息

标签

尚未输入任何标签。

Community Treasure Hunt

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

Start Hunting!

Translated by