필터 지우기
필터 지우기

how to find a vector in a known set of possibilities

조회 수: 1 (최근 30일)
Itzik Ben Shabat
Itzik Ben Shabat 2013년 7월 15일
Hi, say i have a vector v that can be one of previously known 11 possibilities. is there a simple way to know which possibility it is without compairing each element? (i think its something like a lookup table but the matlab lookup table function seems to do something completely different).
for example v=[1 0 0]; possibilities=[ 0 0 1; 0 1 1; 1 0 0...] the answer to this example should be 3 (v corresponds to row 3 in the possibilities matrix)
thanks

채택된 답변

Azzi Abdelmalek
Azzi Abdelmalek 2013년 7월 15일
Use the function below to find all possibilities
function y=arrangement(v,n)
m=length(v);
y=zeros(m^n,n);
for k = 1:n
y(:,k) = repmat(reshape(repmat(v,m^(n-k),1),m*m^(n-k),1),m^(k-1),1);
end
Then write
v=[1 0];
n=3
y=arrangement(v,n)
idx=find(ismember(y,[1 0 0],'rows'))
  댓글 수: 1
Itzik Ben Shabat
Itzik Ben Shabat 2013년 7월 15일
find(ismember(y,[1 0 0],'rows')) is all i needed. thanks!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Data Types에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by