Convert each cell to numeric

Hi all,
I have this kind of code:
seq1 = [1,3,2,3,2,3,1,3];
seq2 = [3,3];
seq3 = [1,2,2,2,2,2,2,2];
seq4 = [1,2,1,1,2,2,1,2,2,1,2];
seqs = {seq1, seq2, seq3, seq4};
How can I read seq1, seq2, seq3, seq4 from seqs since hmmdecode(seqs,tr,e) only accepts numeric? is there a way to do a loop in seqs parameter?

 Respuesta aceptada

Azzi Abdelmalek
Azzi Abdelmalek el 8 de Feb. de 2013

1 voto

seqs{1}
seqs{2}

12 comentarios

Emmanuel
Emmanuel el 8 de Feb. de 2013
but i need to run hmmdecode(seqs,tr,e) only once not twice.
Azzi Abdelmalek
Azzi Abdelmalek el 8 de Feb. de 2013
Editada: Azzi Abdelmalek el 8 de Feb. de 2013
Maybe you can use cellfun,what are tr and e?
Azzi Abdelmalek
Azzi Abdelmalek el 8 de Feb. de 2013
Editada: Azzi Abdelmalek el 8 de Feb. de 2013
cellfun(@(x) hmmdecode(x,tr,e) ,seqs,'un',0)
Emmanuel
Emmanuel el 8 de Feb. de 2013
Editada: Azzi Abdelmalek el 8 de Feb. de 2013
pStates = hmmdecode(cellfun(seqs),tr,e);
I think it does not give me what I need. It is used for getting mean, converience etc..
cellfun(@(x) hmmdecode(x,tr,e) ,seqs,'un',0)
Emmanuel
Emmanuel el 8 de Feb. de 2013
i got this error:
Error using cellfun Input #3 expected to be a cell array, was double instead.
Check this (but you have to introduce tr and e)
seq1 = [1,3,2,3,2,3,1,3];
seq2 = [3,3];
seq3 = [1,2,2,2,2,2,2,2];
seq4 = [1,2,1,1,2,2,1,2,2,1,2];
seqs = {seq1, seq2, seq3, seq4};
out=cellfun(@(x) hmmdecode(x,tr,e) ,seqs,'un',0)
Emmanuel
Emmanuel el 8 de Feb. de 2013
same error
Azzi Abdelmalek
Azzi Abdelmalek el 8 de Feb. de 2013
Editada: Azzi Abdelmalek el 8 de Feb. de 2013
What are tr and e?
Emmanuel
Emmanuel el 8 de Feb. de 2013
Editada: Emmanuel el 8 de Feb. de 2013
tr = [0.4,0.3,0.3;
0.4,0.3,0.3;
0.4,0.3,0.3;];
e = [0.4,0.3,0.3;
0.3,0.4,0.3;
0.3,0.3,0.4;];
Emmanuel
Emmanuel el 8 de Feb. de 2013
solved it by doing : hmmdecode(cell2mat(seqs(1,:)),tr,e);
thanks a lot!
Ok try this, copy and past this code
clear
tr = [0.4,0.3,0.3;0.4,0.3,0.3;0.4,0.3,0.3;];
e = [0.4,0.3,0.3;0.3,0.4,0.3;0.3,0.3,0.4;];
seq1 = [1,3,2,3,2,3,1,3];
seq2 = [3,3];
seq3 = [1,2,2,2,2,2,2,2];
seq4 = [1,2,1,1,2,2,1,2,2,1,2];
seqs = {seq1, seq2, seq3, seq4};
out=cellfun(@(x) hmmdecode(x,tr,e) ,seqs,'un',0)

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by