How can I separate the data into two groups.?
Mostrar comentarios más antiguos
How can I separate the data into two groups.
- If the first element of a column is largest number of that column, such type of columns are placed into one group.
- If the largest number is not at the first position of that column and is present as 2nd 3rd 4thor any other position of that column, then such columns are placed in one group.
I need to form two groups of this data. Screenshot of data is attached. I highlighted few coloumn's largest number.

Thanks in advance.
3 comentarios
Rik
el 21 de Mayo de 2021
What have you tried so far?
zhoug zho
el 21 de Mayo de 2021
Daniel Bengtson
el 21 de Mayo de 2021
So you basically need to compare the first element in each column against the maximum value in each column. If they are equal then that column goes in the first group, otherwise the column would go in the second group.
Respuesta aceptada
Más respuestas (1)
Kartikay Sapra
el 21 de Mayo de 2021
data = [-1 -2 -1; 0 -1 0; 0 0 0]
data(data==0) = NaN
[maxVal ids] = max(data)
data(isnan(data))=0
part_a = data(1:end,ids==1)
part_b = data(1:end,~(ids==1))
When finding the maximum, just keep the indices of non-zero values by making zeros 'NaN'. After that, NaN values dont interfere with max/min so after retrieving the indices, change NaN back to 0.
Categorías
Más información sobre Matrix Indexing en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!