Help me, please. I want a matrix transform averaged and unique in specific col,

1 visualización (últimos 30 días)
I want first 1 and 2 columns unique and 3 coloum make average matrix.
for example
[1,2,11; 1,2,12; 1,2,13; 2,4,10; 2,4,12]
->
[1,2,12; 2,4,10]
How can I get that? I can do that very complex way but I think there is some smart way. Help me people
  2 comentarios
Walter Roberson
Walter Roberson el 20 de Oct. de 2011
If you want averaging, then why isn't the second row [2, 4, 11] ?
Sangjae
Sangjae el 20 de Oct. de 2011
yes you're right!! it must be [2,4,11].
sorry for my mistake

Iniciar sesión para comentar.

Respuesta aceptada

Andrei Bobrov
Andrei Bobrov el 20 de Oct. de 2011
A = [1,2,11; 1,2,12; 1,2,13; 2,4,10; 2,4,12];
[a,b,c] = unique(A(:,1:2),'rows');
out = [a cellfun(@mean,mat2cell(A(:,end),histc(c,1:max(c)),1))];

Más respuestas (1)

Pramod Bhat
Pramod Bhat el 20 de Oct. de 2011
may u please elaborate your question? im not getting ur problem...

Categorías

Más información sobre Creating and Concatenating Matrices 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!

Translated by