Borrar filtros
Borrar filtros

How to merge two D arrays according a given order?

2 visualizaciones (últimos 30 días)
Aditya Shukla
Aditya Shukla el 16 de Jun. de 2015
Editada: Aditya Shukla el 17 de Jun. de 2015
Hi all, I want to merge two D arrays according a given order.
Suppose I have two arrays id1=[ 3 5 6] and id2=[1 4 7] and coordinates of these ids id1_coords=[23 45;34 66;34 24] and [26 34;46 78; 34 67]
Now, if I sort and merge id1 and id2 as merge_id= union(id1,id2); merge_id=[1 3 4 5 6 7]; So how could i merge id1_coords and id2_coords such that they are arranged in the same sequence as it is in merge_id i.e.
merge_coords will be like..[26 34; 23 45;46 78.....] soon.
  1 comentario
Aditya Shukla
Aditya Shukla el 17 de Jun. de 2015
Editada: Aditya Shukla el 17 de Jun. de 2015
Hi, Suppose if i get the array like this
m=
1 14 56
2 12 45
2 34 65
3 78 56
4 64 34
4 45 23
.......
but i want to delete rows having same ids{but different coordinates},
here-'2',and -'4' . i.e want to retain any one of the rows '2' and '4'.
somewhat like this..
m=
1 14 56
2 12 45
3 78 56
4 64 34
.......
It could be any id, [not only 2 and 4].

Iniciar sesión para comentar.

Respuesta aceptada

Mischa Kim
Mischa Kim el 16 de Jun. de 2015
Aditya, how about
ID1 = [id1' id1_coords];
ID2 = [id2' id2_coords];
ID = sortrows([ID1; ID2])
ID =
1 26 34
3 23 45
4 46 78
5 34 66
6 34 24
7 34 67

Más respuestas (0)

Categorías

Más información sobre Shifting and Sorting Matrices en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by