質問

Suppose an index vector in binary like below

Input

1 1 0 0 1 0 1

1 2 3 4 5 6 7

Intended output

1 2 5 7

which denotes nth number to be chosen. So I want to change 1 1 0 0 1 0 1 to 1 2 5 7, is there some easy way for this?

役に立ちましたか?

解決 2

The solution is using the function find(indicesBinary)

他のヒント

If you actually want to use your output to index another vector, do it directly.

You just need to transform your binary vector to logical

A = [1 1 0 0 1 0 1];    %assuming its double
B = [1 2 3 4 5 6 7];

C = B( logical(A) )

C =

     1     2     5     7
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top