MATLAB中字母到整数的映射
函数需要输入消息为正整数序列。因此,我需要使用以下映射将消息转换为数字序列message_intMATLAB中字母到整数的映射,matlab,Matlab,函数需要输入消息为正整数序列。因此,我需要使用以下映射将消息转换为数字序列message_int “A”→1,‘C’→2,‘G’→3,“T”→4.哦,请重新阅读您的问题:您的映射并不是那么简单。对不起。 (既然darvidsOn写了同样的答案,我不会删除这个答案——它可能会给你一个开始——但它不能完全回答你的问题) 看看 您可以使用d=double('A')将char转换为double——然后需要减去64,以获得所需的映射(因为A是ascii码65)。据我所知,您使用的字母表仅包含四个值A、C、
“A”→1,‘C’→2,‘G’→3,“T”→4.哦,请重新阅读您的问题:您的映射并不是那么简单。对不起。 (既然darvidsOn写了同样的答案,我不会删除这个答案——它可能会给你一个开始——但它不能完全回答你的问题) 看看
您可以使用
d=double('A')
将char
转换为double
——然后需要减去64
,以获得所需的映射(因为A
是ascii码65)。据我所知,您使用的字母表仅包含四个值A、C、G、T(我想是DNA序列)
简单的比较就足够了:
seq = 'TGGAGGCCCACAACCATTCCCTCAGCCCAATTGACCGAAAGGGCGCGA';
msg_int = zeros(size(seq));
msg_int(seq=='A') = 1;
msg_int(seq=='C') = 2;
msg_int(seq=='G') = 3;
msg_int(seq=='T') = 4;
这些都是在matlab中完成的吗?(为什么C++和HTML标签?)这听起来也有点像家庭作业。@ R.June-下次你想要帮助你的家庭作业时,你需要发表你试图解决问题的方法。请投入一些精力,因为回答你问题的人肯定会的。+1虽然我没有看你的答案,但我基本上写下了你在我的答案的后续编辑中所写的内容,因此我要赞扬你:)