convert vector of character to number

1 Ansicht (letzte 30 Tage)
benghenia aek
benghenia aek am 22 Mai 2022
Bearbeitet: DGM am 22 Mai 2022
hello
how to covert vectro cell ['A' 'A' 'A' 'B' 'B' 'A'] to numerical vector [1 1 1 2 2 1]

Antworten (2)

MJFcoNaN
MJFcoNaN am 22 Mai 2022
It depends on how you translate a word, for example:
% s in this form is not a cell, but a character array
s=['A' 'A' 'A' 'B' 'B' 'A']
s = 'AAABBA'
abs(s)-abs('A')+1
ans = 1×6
1 1 1 2 2 1

DGM
DGM am 22 Mai 2022
Bearbeitet: DGM am 22 Mai 2022
Are the inputs always single characters? Are the inputs only A or B? Are the inputs always letters? Does case matter?
Here's a start for a method. It's compact and case-insensitive, but note that the outputs will probably be unexpected if the inputs aren't letters or single characters.
bunchofletters = {'A' 'A' 'A' 'B' 'B' 'A'};
bunchofnumbers = double(lower([bunchofletters{:}]))-96
bunchofnumbers = 1×6
1 1 1 2 2 1
Without knowing what the requirements are, I'm going to leave the task of making it fit for purpose up to someone who knows what the purpose is.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by