-1

2 列 (12x2) に 24 の座標の行列が 1 つあります。

マトリックス1:

1.1、4.1

2.3、4.8

9.1、33.1

12.45、45.67など...

これを 100 を超える範囲のサイズの他のマトリックスと比較したいと思います。たとえば、10 の座標で構成されるものもあれば、15 で構成されるものもあれば、24 で構成されるものもあります。これは、一致を見つけるために行われます。

それらを比較するために、マトリックス内の要素のpdistを見つけてから、許容範囲を使用して、一致するために正確である必要がないようにしてから、一致するかどうかを判断するために「モード」を使用して過半数を見つけます。

したがって、これは同じサイズのマトリックスではうまく機能しますが、他のマトリックスではうまくいきません. これによりマッチングが可能になりましたが、pdist が使用したくない距離を作成したためです。

私の比較コード:

結果 = (配列 >= マトリックス 1 * 0.1 & 配列 < マトリックス 1 * 1.5);

ヘルプやガイダンスをいただければ幸いです。お時間をいただきありがとうございます!

短縮版

2 つの不等行列を比較する

私のコードでは、同じサイズの行列を比較することしかできません。何かアドバイスはありますか?

結果 = (配列 >= マトリックス 1 * 0.1 & 配列 < マトリックス 1 * 1.5);

4

1 に答える 1

0

私はこのように行きますが、それがあなたの要件を満たすかどうかはわかりません:

array = randi(100,24,2); % starting matrix
matrix = randi(100,13,2); % comparative matrix
matrix1 = padarray(matrix,size(array) - size(matrix),'post'); % pad comparative matrix with zeros

results = (array >= matrix1 * 0.1 & array < matrix1 * 1.5); 
于 2013-04-22T17:38:33.200 に答える