convert vector of character to number

2 vues (au cours des 30 derniers jours)
benghenia aek
benghenia aek le 22 Mai 2022
Modifié(e) : DGM le 22 Mai 2022
hello
how to covert vectro cell ['A' 'A' 'A' 'B' 'B' 'A'] to numerical vector [1 1 1 2 2 1]

Réponses (2)

MJFcoNaN
MJFcoNaN le 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 le 22 Mai 2022
Modifié(e) : DGM le 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