Remove values from column that are close in value to each other

4 次查看(过去 30 天)
I have a column of values:
43
90
91
128
191
192
I would like to remove the values that are close to each other in value, but keep the highest value.
I would want the column to look like this:
43
91
128
192
Is this possible or should I rethink my way of doing this?

采纳的回答

Matt J
Matt J 2021-12-20
编辑:Matt J 2021-12-20
One possibility:
x=[43
90
91
128
191
192];
[~,~,G]=uniquetol(x,10,'DataScale',1);
splitapply(@max,x,G)
ans = 4×1
43 91 128 192

更多回答(1 个)

David Hill
David Hill 2021-12-20
x=sort(x);%make sure x is sorted
x(diff(x)<2)=[];

类别

Help CenterFile Exchange 中查找有关 Numeric Types 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by