How to delete a row from an array if a specified column has specified numbers?

1 view (last 30 days)
I want to delete a row from an array if a specified column has a specified number. How do I generalize the following if there is more than one number specified, i.e., for a vector with arbitrary length? The following does what I want for the specified numbers 5 and 6 and column 2, but I want to generalize it.
A(((A(:,2) == 5) | (A(:,2) == 6)),:) = [];

Accepted Answer

Kevin Holly
Kevin Holly on 30 Mar 2022
A = round(10*rand(20,3))
A = 20×3
7 5 1 2 9 3 4 9 4 1 8 0 8 10 9 3 7 4 5 7 7 8 5 1 2 8 0 3 10 5
for n = [5,6]
A((A(:,2) == n),:) = [];
end
A
A = 17×3
2 9 3 4 9 4 1 8 0 8 10 9 3 7 4 5 7 7 2 8 0 3 10 5 5 10 0 2 0 4

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!