こんにちは、matlab の並列ツールボックスを使用するのは初めてです。私はこのループを持っています
for y=1:size(pxyvector,1)
if (strcmp(pxyvector{y,1}, emotionword))&&(strcmp(pxyvector{y,2},tweet{x}))
pxyvector{y,3} = pxyvector{y,3} +1;
invector = true;
end
end
どうすればこれを並行して機能させることができますかfor
。matlab のスライス変数の部分を読みましたが、ここでこれを行う方法がわかりません。
pxyvector
は 100000x3 セル配列です
tweet{x}
文字列です
emotionword
も文字列です。
invector
後でループの外で使用される値です。
したがって、基本的には、pxyvector の行の最初の値を感情語と比較し、pxyvector
toの行の 2 番目の値を比較しtweet{x}
ます。それらが同じ場合。行の 3 番目の値が増加します。
ループ中に同じ値を 2 回インクリメントすることはできません。
この for ループの問題は、ループの外でも使用される変数を変更して、値をインクリメントする必要があることです。
再生するデータ: http://ojtwist.be/pxyvector.mat (変数はこの .mat ファイルの pxyvector2 であるため、テストする場合はコードで変更します)