MATLAB: самый быстрый способ конвертировать символы в пользовательский набор чисел и обратно

Я ищу быстрый способ преобразования большого массива символов строчных букв, пробелов и периодов в набор целых чисел и наоборот в MATLAB.

Обычно я бы использовал функции double и char, но я хотел бы использовать специальный набор целых чисел для представления каждой буквы (так что «а» соответствует '1', 'b' соответствует «2».... 'z' соответствует 26 ' соответствует 27 и '.' соответствует 28)

Текущий метод, который у меня есть:

text = 'quick brown fox jumps over dirty dog';
alphabet ='abcdefghijklmnopqrstuvwxyz .';

converted_text = double(text);
converted_alphabet = double(alphabet);

numbers = nan(28,1)

for i = 1:28
     numbers(converted_text(i)==converted_alphabet(i)) = i;
end

newtext = nan(size(numbers))

for i = 1:size(numbers,1)
   newtext(numbers==i) = alphabet(i)
end

К сожалению, это занимает довольно много времени для больших массивов, и яИнтересно, есть ли более быстрый способ сделать это в MATLAB?

Ответы на вопрос(1)

Ваш ответ на вопрос