Delete row from Matrix

595 views (last 30 days)
Nancy
Nancy on 21 Jun 2012
Commented: muhammad usama on 7 May 2023
I have a Matrix of 400 rows and 40 columns. I want to completely remove rows 3 and 9 to get a matrix with 398 rows. How can I do it in MATLAB.
  3 Comments
Yuvraj Praveen Soni
Yuvraj Praveen Soni on 9 Dec 2019
if assume A is your matrix with 400 rows and 40 column,
To remove 3rd row
a(3,:)=[];
now your 9th row become 8th row;
a(8,:)=[];
and with this your 3rd and 9th row will be deleted, you can also check the size by
size(a);
Thank You

Sign in to comment.

Accepted Answer

Jan
Jan on 22 Jun 2012
Edited: MathWorks Support Team on 9 Nov 2018
If you have a matrix A and want to delete the 3rd and 9th rows, you can use the command:
A([3,9],:) = [];
  5 Comments
Walter Roberson
Walter Roberson on 18 Jun 2019
Katarina, I am not clear as to where you are seeing anything about deleting columns in this Answer?
If you want to delete a column then name it in the second index:
A(:,k) = [];
Arezoo Samiei
Arezoo Samiei on 7 Oct 2021
Thank you so much Jan!

Sign in to comment.

More Answers (5)

Peter
Peter on 30 Nov 2012
"I have a Matrix of 400 rows and 40 columns.I want to completely remove rows 3 and 9 to get a matrix with 398 rows. How can I do it in MATLAB."
Matrix_2 = Matrix_1( [1:2,4:8,10:end] , : )
Best,
Pete

Dan W
Dan W on 23 Jan 2015
I'm not sure if this is new syntax or not, but it works with R2012a and it's fast and simple.
x = rand(100);
tic;
x([3,9],:) = [];
toc; % Elapsed time is 0.000230 seconds.
  3 Comments
Andrei Bobrov
Andrei Bobrov on 10 Jun 2016
Hi Mehul! It new question.
Andrei Bobrov
Andrei Bobrov on 10 Jun 2016
out = m1;
out(m2,:) = [];

Sign in to comment.


Andrei Bobrov
Andrei Bobrov on 21 Jun 2012
m = m(setdiff(1:size(m,1),[3,9]),:);
  5 Comments
Jan
Jan on 22 Jun 2012
SETDIFF has a remarkable overhead. ISMEMBER is smarter and twice as fast for a 100x100 matrix:
m = m(~ismember(1:size(m, 1), [3,9]), :);
pradeep kumar
pradeep kumar on 30 Aug 2014
@ Andrei Bobrov , @ Walter Roberson,@ Jan Simson . how delete a particular row and column of a matrix by using "setdiff" . Say m= [1 2 3 4 ; 5 6 7 8; 9 10 11 12 ; 13 14 15 16 ]. i want to delete 1st row and 2nd column to obtain m=[5 7 8; 9 11 12;13 15 16]

Sign in to comment.


Alireza Rezvani
Alireza Rezvani on 19 Jun 2016
sry, how i can Deleting individual columns of a matrix, any body know?
  2 Comments
Muhammad Usman Saleem
Muhammad Usman Saleem on 19 Jun 2016
Assume out is your matrix and you want to delete its first column, try this code,
out(:,1) = [];
surendra bala
surendra bala on 31 Mar 2018
Yes. This is the easiest way you can do.

Sign in to comment.


LISSA DUVVU
LISSA DUVVU on 29 Sep 2018
i want to delete all columns data where the 4th row contains number 7
  1 Comment
Jan
Jan on 7 Oct 2018
Please do not attach a new (and very vague) question in the section for answers of another questions. Such thread-hijacking is confusing only, because it is not longer clear, to which question an answer belong. Please open your own question and delete this pseudo-answer. Thanks.

Sign in to comment.

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!