How to map a scalar to a vector?

I want to map a letter to a a vector.
Example: a is mapped to [ 0 0 0 0 1]
b ia mapped to [0 0 0 1 0] and so on.
The containers.Map function does not help me with this regard. Is there any other way to do the mapping?
Thanks in advance!

 Respuesta aceptada

Walter Roberson
Walter Roberson el 31 de Jul. de 2019
Map = dec2bin(('a' :'z') - 'a' + 1, 5);
Word = 'hello' ;
Map(Word(:) - 'a' + 1,:)

3 comentarios

Sanjana Sankar
Sanjana Sankar el 31 de Jul. de 2019
Thanks. This answers my question as posted. But do you know how I should do it if I have other than just english alphabets? Or other characters? In gerneral, a scalar to vector mapping..
Create a character vector that contains all of the permitted characters. You can build it in pieces using [] if that helps.
Then
Map = dec2bin(1:numel(PermittedChars)) ;
[~, idx] = ismember(Word, PermittedChars);
Result = Map(idx, :);
Sanjana Sankar
Sanjana Sankar el 1 de Ag. de 2019
Thanks a lot!

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Preguntada:

el 31 de Jul. de 2019

Comentada:

el 1 de Ag. de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by