Filter löschen
Filter löschen

compare datasets and remove not common rows

2 Ansichten (letzte 30 Tage)
Doriana
Doriana am 8 Okt. 2013
Kommentiert: Doriana am 8 Okt. 2013
Hello all, I have to compare two datasets (a= 89072 x 13 & b=89268 x 37) that must have the same rows, so I have to remove the rows that are not common. The columns number for the two dataset are not the same, so I can't 'Intersect' them. How can I remove these rows please?
Thank you
  4 Kommentare
Sean de Wolski
Sean de Wolski am 8 Okt. 2013
But there are 13 columns in one and 37 in the other so you are going to have to define some type of definition for "same". Once you've defined "sameness", then we can help identify and remove.
Doriana
Doriana am 8 Okt. 2013
Dear Sean, the two datasets (a & b) initially had the same observations but different columns. In the first dataset (a) there are quantitative variables while in the second ds (b) the qualitative variables. I removed some observations (outliers) from dataset 'a' and I have to eliminate these observations also from dataset 'b' because the two datset must have the same observations. thank you

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

kittu
kittu am 8 Okt. 2013
What do you mean by " I have to remove the rows that are not common"? if you mean to reduce the size of the other dataset(b) and make it equal to
a,
then you can use
b(1:length(a),:)
  4 Kommentare
Doriana
Doriana am 8 Okt. 2013
I just solved the problem running these command:
NDG_X= get(a,'ObsNames');
NDG_Xc= get(b,'ObsNames');
[~,ia,ib] = intersect(NDG_X,NDG_Xc,'stable') ;
a_ridotto=a(ia,:);
b_ridotto=b(ib,:);
thanks anyway, Doriana
Doriana
Doriana am 8 Okt. 2013
yes, you're right,
I have mistakenly swapped a and b,
however I could not use your command because 'a' and 'b' must have the same observations and not only the same size...

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by