How to code a generic for loop that removes a row with missing requirement

1 view (last 30 days)
Andromeda
Andromeda on 1 Apr 2022
Commented: Voss on 2 Apr 2022
I am trying to create a generic program using a for loop that removes the row if a user checks their number against it and it is not there. A matrix will have unspecified number of rows and columns, a user will input their value say n, if the user's n is not in row k of A, row k should be deleted.
A = magic(50);
row = size(A,1);
n = 3; %or whatever number
for r = 1:1:row
if not(ismember(n, A)) %if n is not a member of whatever row it is on, it should be deleted
%what goes in here?
end
end

Accepted Answer

Voss
Voss on 1 Apr 2022
A = magic(50);
row = size(A,1);
n = 3; %or whatever number
rows_to_delete = [];
for r = 1:1:row
if ~ismember(n, A(r,:)) %if n is not a member of whatever row it is on, it should be deleted
rows_to_delete(end+1) = r;
end
end
% delete the rows
A(rows_to_delete,:) = [];
  3 Comments

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by