remove rows under certain condition
1 次查看(过去 30 天)
显示 更早的评论
Can you help?
Can you help?
On below matrix, for same X and Y, pick smallest Z, then put into a new matrix.
X Y Z 60,-40,1.1 55,-40,3.1 55,-45,4.5 60,-45,5.3 60,-40,7 55,-40,8.4 55,-45,9.8 60,-40,11.2 60,-45,12.6 55,-40,14 55,-45,15.4 60,-45,16.8 60,-40,18.2 60,-45,19.6 55,-40,21 60,-40,22.4 55,-45,23.8 60,-45,25.2 55,-40,26.6 55,-45,28
0 个评论
采纳的回答
Jos (10584)
2016-4-14
Assuming your X, Y, and Z variables are stored in three vectors of equal length
[UniqueXY, ~, k] = unique([X(:) Y(:)],'rows') ;
MinZ = accumarray(k, Z(:), [], @min)
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!