How I find four or five colunms with distict rows from a table

2 visualizaciones (últimos 30 días)
Umme ruman Wattoo
Umme ruman Wattoo el 19 de En. de 2023
Respondida: David Hill el 19 de En. de 2023
I have a table with 46 columns and 115 rows and I have to find 3 or 4 or 5 such columns that all have distinct rows.In that 4 columns there should not be repeatation in entire 115 rows
  1 comentario
Mathieu NOE
Mathieu NOE el 19 de En. de 2023
you simply have to test each column and see if you have 115 unique values
read doc / help of unique

Iniciar sesión para comentar.

Respuestas (1)

David Hill
David Hill el 19 de En. de 2023
First convert your table into a matrix using table2array()
A=randi(100,115,64);
k=nchoosek(1:64,5);%all combinations of 5 columns (change for 3 and 4)
y=[];
for m=1:size(k,1)
t=A(:,k(m,:));
t=unique(t,'rows');
if size(t,1)==115
y=[y,m];%all rows of k that meet the condition
end
end
k(y,:)%all combinations of 5 columns where all 115 rows are unique

Productos


Versión

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by