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

1 Ansicht (letzte 30 Tage)
Umme ruman Wattoo
Umme ruman Wattoo am 19 Jan. 2023
Beantwortet: David Hill am 19 Jan. 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 Kommentar
Mathieu NOE
Mathieu NOE am 19 Jan. 2023
you simply have to test each column and see if you have 115 unique values
read doc / help of unique

Melden Sie sich an, um zu kommentieren.

Antworten (1)

David Hill
David Hill am 19 Jan. 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

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Produkte


Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by