×k行列があり、参照1×kベクトルからnベクトルの平均距離を取得したい。norm(v(i, :) - test)
ループ内で使用できますが、それを行うためfor
の最小限の解決策はありますか?
質問する
171 次
3 に答える
5
PDIST2 関数を使用できます。
mean(pdist2(X,test))
または、統計ツールボックスにアクセスできない場合:
mean(sqrt(sum(bsxfun(@minus, X, test).^2,2)))
于 2013-09-16T08:19:59.837 に答える
2
もう 1 つの可能性は、 を使用pdist2
して 2 つの観測セット間の距離を計算することです。
d = pdist2( v, test );
mean( d )
于 2013-09-16T08:20:29.373 に答える
1
bsxfunを使用してすべての距離を取得できます
d = bsxfun(@minus, v, test);
d = sqrt( sum( d.^2, 2 ) ); % distance of each vector from test
mean( d )
于 2013-09-16T08:18:52.773 に答える