Encoding Binary to DNA sequencing
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Meghashree G
el 25 de Sept. de 2015
Comentada: Walter Roberson
el 7 de Feb. de 2021
I am trying to convert the string into binary and sequencing with DNA,but i am getting error as follows :
Attempted to access bases(145); index out of bounds because numel(bases)=4.
Error in ==> filename at 21
result((k+1)/2) = bases(index);
What is the solution for this? Here is the code:
clc;
ui=input('enter the message:','s')
decString = unicode2native(ui,'utf-8')
hexString = dec2hex(decString)
binaryArray= dec2bin(decString,8)
bases = 'ATGC';
for k = 1 : 2 : length(binaryArray)
% Convert these two digits into a number 1 - 4.
index = 2 * binaryArray(k) + binaryArray(k+1) + 1;
% Use that index to assign a letter to our result.
result((k+1)/2) = bases(index);
end
% Display in command window:
result
Thank you
2 comentarios
Walter Roberson
el 7 de Feb. de 2021
Yes, that is exactly the problem that was discussed in the Answer.
Respuesta aceptada
Image Analyst
el 25 de Sept. de 2015
bases has only 4 elements so index must stay in the range 1,2,3,4 not 145 like you have it. Think about the logic some more.
5 comentarios
Meghashree G
el 26 de Sept. de 2015
Editada: Walter Roberson
el 26 de Sept. de 2015
Walter Roberson
el 26 de Sept. de 2015
I do not see the difference between what you got and what you want.
To answer your question, though: No, it is not a vector, it is an array. Character strings in MATLAB are arrays, not individual entities. The "result" variable above is char of size 6 x 4
If you want it as a cell array of strings, then use cellstr(result)
Más respuestas (0)
Ver también
Categorías
Más información sobre Logical en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!