I need to read a sequence and convert it t0 numerical text

3 visualizzazioni (ultimi 30 giorni)
Can any body help me to find a solution.My objective is to convert a dna sequence into numerical form ie A with 1, C with 2, T with 3 and G with 4.hcv is a structure having two fields header and sequence. when i tried to display it is not showing any ouput, no errors.the code is given below.Eg of sequence ACTTTGGCTT.........
s1='A';s2='C';s3='T';s4='G';
n=10;%%%%%%%%number of sequences%%%%%%
hcv = fastaread('hcv1.fas','IgnoreGaps',true);
hcvnum=hcv;
for i=1:n
len(i) = cellfun(@length, {hcv(i).Sequence});
for j=1:len(i)
if strcmp(hcv(i).Sequence(j),s1)
hcvnum(i).Sequence(j)=1;
elseif strcmp(hcv(i).Sequence(j),s2)
hcvnum(i).Sequence(j)=2;
elseif strcmp(hcv(i).Sequence(j),s3)
hcvnum(i).Sequence(j)=3;
else
strcmp(hcv(i).Sequence(j),s4)
hcvnum(i).Sequence(j)=4;
end
end
end

Risposta accettata

Walter Roberson
Walter Roberson il 18 Nov 2011
for j=1:len(i)
[tf, idx] = ismember(hcv(i).Sequence(j), {s1,s2,s3,s4});
if tf; hcvnum(i).Sequence(j) = idx; end
%if tf is false then it was some other character
end

Più risposte (0)

Categorie

Scopri di più su Data Type Conversion in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by