matrix unions
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
if array A = 10 x 1 with numbers in it and array B = 4 x 1 with numbers in it. How would you create an array C which equals the size of A and is filled with NaN except for the points where A and B equal the same value.
A = [ 1 2 3 4 5 6 7 8 9 10]
B = [ 1 3 5 7]
I would like:
C = [1 NaN 3 NaN 5 NaN 7 NaN NaN NaN]
thanks for the help
0 comentarios
Respuesta aceptada
Geoff
el 27 de Mzo. de 2012
You can use a real handy function called ismember() to test elements of A against elements of B. Then it's just a matter of indexing:
in = ismember(A,B);
C = nan(size(A));
C(in) = A(in);
0 comentarios
Más respuestas (1)
Andrei Bobrov
el 27 de Mzo. de 2012
C = A
C(~ismember(A,B)) = nan
OR
C = A
C(setdiff(A,B)) = nan
0 comentarios
Ver también
Categorías
Más información sobre Numeric Types en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!