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

6 vues (au cours des 30 derniers jours)
Seungeun Lee
Seungeun Lee le 2 Oct 2015
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.

Réponses (2)

Walter Roberson
Walter Roberson le 2 Oct 2015
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);

Andrei Bobrov
Andrei Bobrov le 2 Oct 2015
A = [1 0 1 0 1 0 0 1 0 1 0 1];
out = cell(size(A));
out(A>0) = {'[apple]'};
  1 commentaire
Walter Roberson
Walter Roberson le 3 Oct 2015
This would leave empty cells where the 0 should be.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Characters and Strings dans Help Center et File Exchange

Tags

Aucun tag saisi pour le moment.

Community Treasure Hunt

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

Start Hunting!

Translated by