MATLAB: How to delete a row by selected randomly from a matrix

deleting randomly selected row.

  • d=2;
  • for i=1:10
  • pop(i,:)=rand(1,d);end
  • M=pop(randi(size(pop,1)),:)
  • now i want to know that how to delete this M without knowing the row number and the values of the row, just to delete it by using The "M"

Best Answer

This depends on M being exactly equal in each of its elements to the corresponding elements of one of the rows of 'pop':
for k = 1:size(pop,1)
if all(M==pop(k,:)
pop(k,:) = []; % Delete the matching row of pop
break;
end
end