0

以下が必要なMatlabコードで「交差」を使用していました。

A = [ 4 1 1 2 3];

[B] = sort(A, '昇順'); % B が A を昇順でソートするように、B = [1 1 2 3 4] を得ました。

[同じ、a] = 交差 (B、A);

同じ = [1 1 2 3 4] が必要ですが、繰り返される '1' を省略すると、シミュレーションで同じ = [1 2 3 4] が得られます。

intersect を使用すると、繰り返しのないデータが返されることを理解しています

C = intersect(A,B) は、A と B の両方に共通するデータを繰り返しなしで返します。それらの繰り返しを含む完全なデータを表示したいのですが、「交差」機能の代わりに使用できる代替手段は何ですか?

例えば:

A = [ 4 1 1 2 3];

[B] = sort(A, '昇順'); % B が A を昇順でソートするように、B = [1 1 2 3 4] を得ました。

[同じ、a] = 交差 (B、A);

だから今、私はそれがこの同じようになりたいです =[1 1 2 3 4] そして a=[2 3 4 5 1].

「a」にアクセスする必要があります。「a」はソート前の元のインデックスを示しているため、それをさらに処理するために使用できます。

どうもありがとうございました。

4

1 に答える 1

0

B に A と同じ値が含まれていることを知って、なぜ A と B の交差が必要なのですか? あなたの言ったことから、あなたは必要なすべての結果を B に持っていると思います。

于 2013-10-16T07:56:57.700 に答える