私は2つのベクトルを持って、一方が他方のベクトルがリストである。このfprintfのエラー(セル用に定義されていない?)
のような長さ147202x1の言葉hello
there
some_word
...
の辞書です同じ長さのこのような数字の番号
1.0
-1.0
1.0
...
これを乱数でサンプルしたいと思います。私は、これは私がファイルにこれらの新しいベクトルを印刷する長さ1437の1および長さ(dictS_train)の間の数のサンプルがあると思い長さ1437
x_1 = randsample(1:length(dictS_train), 1437, true);
のこの新しいベクトルを作ります。だから私は
filename = 'name_of_the_file.txt';
filename = fopen(filename,'w');
fprintf(filename,'%s %f \n', dictS_train(x_1), polS_train(x_1));
fclose(filename);
を試みたが、問題は、それが
関数fprintfのは、「セル」の入力用に定義されていないこのエラーをポップということです。
私は間違っていますか?たぶん私は各番号を1つずつ印刷する必要がありますか?
念のため、私は、各行に1つのdictS_trainの要素とpolS_train
何が間違ってやっているがために非常に明確な綴られますあなたはMATLABによって:あなたは 'fprintf'をセル上で使うことはできません。行列(あなたの場合はうまくいくでしょう)を行列にするか、それをループして、各セル要素を一時的なchar-matrixに抽出します。 – Adriaan
そして私はどのように2番目ですか?私は他の新しいベクトルに 'x = dictS_train(x_1);' 'y = polS_train(x_1);' '' k = 1:length(x_1) ' ' fprintf(filename、 '%s% 'end' 同じエラーが発生する –
セルを通常の行列(丸括弧'() ')として呼び出そうとしています。あなたはこれにしてはいけません。これは非常に基本的なものなので、[MATLABのデータ型の言語の基礎](http://mathworks.com/help/matlab/data-types_data-types.html)を読むのがよいでしょう。 – Adriaan