Filter löschen
Filter löschen

How do you replace the entry of a matrix with a string?

9 Ansichten (letzte 30 Tage)
Ahmed
Ahmed am 28 Nov. 2013
Kommentiert: oshawcole am 6 Dez. 2017
I'm a little stuck
  2 Kommentare
Azzi Abdelmalek
Azzi Abdelmalek am 28 Nov. 2013
What is the entry of a matrix?
Ahmed
Ahmed am 28 Nov. 2013
It is a number, 0, and I want to change it to a string 'monday' I'm making a calendar

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Wayne King
Wayne King am 28 Nov. 2013
Bearbeitet: Wayne King am 28 Nov. 2013
You can't technically replace an entry of a matrix with an entire string. You would require a cell array for that. You can convert a matrix into numbers and replace single elements with single characters.
For example:
X = randi([0 6],20,20);
X = num2str(X);
X(X=='0') = 'M';
If you tried to replace with 'Monday', you'd get an assignment mismatch problem because you can't put 6 characters in a placeholder for one character.
You would have to use cell arrays for something like that.

Weitere Antworten (2)

Jos (10584)
Jos (10584) am 28 Nov. 2013
I suggest to use a cell array and keep the original numerical matrix for finding the elements that have to change:
X1 = randi([0 6],10,10)
X2 = num2cell(X1)
X2(X1 == 1) = {'Tuesday'}

Azzi Abdelmalek
Azzi Abdelmalek am 28 Nov. 2013
a=[0;1;2;3]
b=num2cell(a)
b{1}='Monday'

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by