0

こんにちは、matlab に次のオブジェクトがあります。

class(data{1}) =

    char

に保存されている

class(data) =

    cell

しかし、私は電話しようとしています:

[estt,este]  = hmmtrain(data{1},e,t);

エラーが発生します:

??? Error using ==> hmmtrain at 209
Seqs must be cell array or numerical array.

データの各要素をhmmtrain 関数と互換性を持たせる方法はありますか?

どうもありがとう

4

1 に答える 1

2

シーケンスの場合、data{1}は char 配列なので、次の方法で各文字を ASCII コードに変換しますdouble

[estt,este]  = hmmtrain(double(data{1}),e,t);

hmmtrain最初の入力引数にセル配列を使用するオプションを使用して複数のシーケンスをフィードする場合(多くの人dataがセルであることを望んでいるように見えるため)、次を試してください。

dataNumCell = cellfun(@double,data,'UniformOutput',false);
[estt,este]  = hmmtrain(dataNumCell,e,t);

編集: hmmtrain に余分な double があった複数のシーケンス オプションを更新しました。

于 2013-10-02T22:28:23.160 に答える