how to extract matrix based on a condition?

10 次查看(过去 30 天)
Hello Everyone, if I have a matrix for example 100 rows by 38 columns, column number 14 has distances, how can i build a for loop with a condition saying: if the distance is between 8 and 12 ft then take the rows corresponding to this condition to construct a new matrix, and put zeros instead of them in the main matrix. i need to do this because i need to stay away from duplicate data when i run another condition. HELP PLEASE

采纳的回答

KSSV
KSSV 2017-11-3
You need not to use a loop, you can use the below lines of code to get what you want.
A = randi(100,38) ; % some random data
distance = A(:,14) ;
%%apply condition to get rows indices satifying the condition
idx = find(distance > 8 & distance < 12)
  1 个评论
MAHMOUD ALZIOUD
MAHMOUD ALZIOUD 2017-11-3
Thank you KSSV for this, now when I take the data by this condition, how can I leave the rows zeros in the original matrix after I take them?

请先登录,再进行评论。

更多回答(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