Delete element from a vector within a given range

12 次查看(过去 30 天)
Hi everyone,
Assuming I have a Vector say A = [2 3 1 8 1 8 4 1 3 6 7 5 6 8 1], and I want to delete the first 7 elements that are less than two. Therefore having A = [2 3 8 8 4 1 3 6 7 5 6 8 1]. Can someone please explain to me how to do this in Matlab?
Thanks
  1 个评论
David Fletcher
David Fletcher 2018-4-6
Since your example matrix doesn't actually have seven elements less than two, I am wondering whether you actually mean the first 7 elements less than 2, or the elements less than 2 with an index less than seven?

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2018-4-6
"I want to delete the first 7 elements that are less than two"
A( find(A < 2, 7, 'first') ) = [];
You only have four elements that are less than 2, so it will delete all four of them.
I think you used the wrong wording and that what you want is
A( A(1:7) < 2 ) = [];
  1 个评论
shalipse
shalipse 2018-4-6
Hello,
Thanks for the quick response and solution. I just realised that I didn't ask my question accurately.

请先登录,再进行评论。

更多回答(0 个)

类别

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

标签

Community Treasure Hunt

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

Start Hunting!

Translated by