Could you help me solving the question regarding to coordinates, please?

1 次查看(过去 30 天)
Let's say I have such points:
  • A=(2,4)
  • B=(2,10)
  • C=(2,15)
  • D=(5,14)
  • E=(6,7)
  • F=(6,15)
  • G=(8,16)
  • H=(8,10)and I just want to select unique points which are A,B,C,D,E and G. I want to eliminate F and H because I've already used 6 in E and 15 in C for F; 8 in G and 10 in B.
Thanks for your time!

采纳的回答

Mischa Kim
Mischa Kim 2014-3-17
编辑:Mischa Kim 2014-3-17
Rengin, use
data = [2,4;
2,10;
2,15;
5,14;
6,7;
6,15;
8,16;
8,10];
[C,ia,ic] = unique(data(:,2));
data_elim = sortrows(data(ia,:),1)
Addendum: the below snippet shows how to read from and write to an Excel file.
data = xlsread('test.xlsx',1); % read from sheet 1
[C,ia,ic] = unique(data(:,2));
data_elim = sortrows(data(ia,:),1);
xlswrite('test.xlsx',data_elim,2); % write to sheet 2
  4 个评论
Mischa Kim
Mischa Kim 2014-3-17
I see. This one produces the result you're looking for:
data_elim = data;
for ii = 2:length(data(:,1))
if sum(ismember(data(ii,:),data(1:ii-1,:))) == 2
data_elim(ii,:) = [NaN NaN];
end
end
data_elim(all(isnan(data_elim(:,1)),2),:) = [];

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by