MATLAB Answers

Arash
0

One-to-one correspondence anonymous function

Asked by Arash
on 10 Feb 2013
I was wondering if can make an injective (one-to-one correspondence) anonymous function to do this;
if the input was one member from P then function convert it to correspondence member in N, for example if input is x=10 out put will be y=5, x=105-->y=4 and ...
P=[10;100;105;700;943]
N=[5;8;4;11;20]
Thanks in advance, Arash

  1 Comment

Sign in to comment.

2 Answers

Answer by Azzi Abdelmalek
on 10 Feb 2013
Edited by Azzi Abdelmalek
on 10 Feb 2013
 Accepted Answer

P=[10;100;105;700;700];
N=[5;8;4;11;20];
f=@(x) N(find(P==x));
f(700)

  2 Comments

The find() is not needed, P==x can be used directly.
Thank you Azzi, you helped a lot.

Sign in to comment.


Answer by Walter Roberson
on 10 Feb 2013

@(x) N(ismember(x, P))

  2 Comments

Maybe it's
ismember(P,x)
Good point.

Sign in to comment.