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?

 採用された回答

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 2 月 8 日

1 投票

seqs{1}
seqs{2}

12 件のコメント

Emmanuel
Emmanuel 2013 年 2 月 8 日
but i need to run hmmdecode(seqs,tr,e) only once not twice.
Azzi Abdelmalek
Azzi Abdelmalek 2013 年 2 月 8 日
編集済み: Azzi Abdelmalek 2013 年 2 月 8 日
Maybe you can use cellfun,what are tr and e?
Azzi Abdelmalek
Azzi Abdelmalek 2013 年 2 月 8 日
編集済み: Azzi Abdelmalek 2013 年 2 月 8 日
cellfun(@(x) hmmdecode(x,tr,e) ,seqs,'un',0)
Emmanuel
Emmanuel 2013 年 2 月 8 日
編集済み: Azzi Abdelmalek 2013 年 2 月 8 日
pStates = hmmdecode(cellfun(seqs),tr,e);
I think it does not give me what I need. It is used for getting mean, converience etc..
Azzi Abdelmalek
Azzi Abdelmalek 2013 年 2 月 8 日
cellfun(@(x) hmmdecode(x,tr,e) ,seqs,'un',0)
Emmanuel
Emmanuel 2013 年 2 月 8 日
i got this error:
Error using cellfun Input #3 expected to be a cell array, was double instead.
Azzi Abdelmalek
Azzi Abdelmalek 2013 年 2 月 8 日
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 2013 年 2 月 8 日
same error
Azzi Abdelmalek
Azzi Abdelmalek 2013 年 2 月 8 日
編集済み: Azzi Abdelmalek 2013 年 2 月 8 日
What are tr and e?
Emmanuel
Emmanuel 2013 年 2 月 8 日
編集済み: Emmanuel 2013 年 2 月 8 日
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 2013 年 2 月 8 日
solved it by doing : hmmdecode(cell2mat(seqs(1,:)),tr,e);
thanks a lot!
Azzi Abdelmalek
Azzi Abdelmalek 2013 年 2 月 8 日
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)

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeLoops and Conditional Statements についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by