私はpdist
(Matlabで)3次元点間のユークリッド距離を計算するために使用しています。pdist
ただし、マトリックスから削除できないが無視したい座標がいくつかあります。
無視したい値を で上書きしようとしましNaN
たが、pdist
それでも計算に使用されます。そのプロセスで pdist に値を無視させる方法はありますか?
私はpdist
(Matlabで)3次元点間のユークリッド距離を計算するために使用しています。pdist
ただし、マトリックスから削除できないが無視したい座標がいくつかあります。
無視したい値を で上書きしようとしましNaN
たが、pdist
それでも計算に使用されます。そのプロセスで pdist に値を無視させる方法はありますか?
わかりませんがpdist
、希望どおりに機能させるには、特定の行を削除する必要があるようです。不要な行のインデックスを見つけた場合は、次のようにすることができます。
d = [1,2,3;2,3,4;3,4,5]
d =
1 2 3
2 3 4
4 5 6
i = [1 3]
d(i,:)
1 2 3
4 5 6
id = pdist(d(i,:)) % assume id=2
real_index = i(id) % now the real index is i(2)=3
これで、行のインデックスが になりますreal_index
。(pdist は私の matlab に存在しないようですので、実際の出力は得られませんが、アイデアはそこにあります!)