How to encode alphabets using tables
3 ビュー (過去 30 日間)
古いコメントを表示
Hi I want to encode the word "CONGRATULATIONS" using upper case letters.For this I have the table
A 0
B 1
C 2
D 3 ......and so on.
I dont know how to relate this type of mapping in matlab.
Alphabets={'A';'B';'C';'D';'E';'F';'G';'H';'I';'J';'K';'L';'M';'N';'O';'P';'Q';'R';'S';'T';'U';'V';'W';'X';'Y';'Z';'null space'};
numeric_values=[0;1;2 ;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20;21;22;23;24;25;26];
T1=table(Alphabets,numeric_values);
M={'C';'O';'N';'G';'U';'R';'A';'T';'U';'L';'A';'T';'I';'O';'N';'S'};
T2=table(M);
0 件のコメント
採用された回答
R.G.
2019 年 9 月 1 日
編集済み: R.G.
2019 年 9 月 1 日
Hello! Check following code. I used char(65:90) to create A-Z sequence, and Map container to map symbols into codes.
symbols = [num2cell(char(65:90)) 'space'];
codes = 0:26;
dictionary = containers.Map(symbols, codes);
word = num2cell('CONGRATULATIONS');
encoded_word = cell(size(word));
for i = 1:length(word)
encoded_word{i} = dictionary(word{i});
end
display(cell2mat(encoded_word));
8 件のコメント
Stephen23
2023 年 9 月 14 日
symbols = [num2cell(char(65:90)) 'space'];
codes = 0:26;
dictionary = containers.Map(symbols, codes);
word = num2cell('CONGRATULATIONS');
encoded_word = cell(size(word));
for i = 1:length(word)
encoded_word{i} = dictionary(word{i});
end
display(cell2mat(encoded_word))
A = 'A':'Z';
V = 0:25;
T = array2table(V(:),'rownames',num2cell(A(:)));
M = num2cell('CONGURATULATIONS');
T{M,:}
The MATLAB approach:
'CONGRATULATIONS' - 'A'
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Matrices and Arrays についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!