Delete row from Matrix
古いコメントを表示
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 件のコメント
Yuvraj Praveen Soni
2019 年 12 月 9 日
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
Gokul Krishna N
2020 年 11 月 2 日
Thanks
採用された回答
その他の回答 (5 件)
Peter
2012 年 11 月 30 日
32 投票
"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
1 件のコメント
muhammad usama
2023 年 5 月 7 日
Thank you, the simplest one.
Dan W
2015 年 1 月 23 日
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 件のコメント
Mehul Agrawal
2016 年 6 月 10 日
Thanks, this works pretty easy. But I have a problem where the elements to remove are decided dynamically. So, I have a matrix m1 of size 100 X 100. And another matrix m2 of size 10X1. m2 has the row number to remove from m1 (they are not in any order). What is the best way to do this ?
Eg: m1 = rand(100); m2 = [1,6,4,8,10]; (this is the output of another function call).
Andrei Bobrov
2016 年 6 月 10 日
Hi Mehul! It new question.
Andrei Bobrov
2016 年 6 月 10 日
out = m1;
out(m2,:) = [];
Andrei Bobrov
2012 年 6 月 21 日
m = m(setdiff(1:size(m,1),[3,9]),:);
5 件のコメント
Sean de Wolski
2012 年 6 月 21 日
mmm glass half full
Ryan
2012 年 6 月 21 日
Anyone care to explain this one?
Walter Roberson
2012 年 6 月 21 日
It copies the rows of m that are _not_ row 3 or 9.
Jan
2012 年 6 月 22 日
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
2014 年 8 月 30 日
@ 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]
Alireza Rezvani
2016 年 6 月 19 日
5 投票
sry, how i can Deleting individual columns of a matrix, any body know?
2 件のコメント
Muhammad Usman Saleem
2016 年 6 月 19 日
Assume out is your matrix and you want to delete its first column, try this code,
out(:,1) = [];
surendra bala
2018 年 3 月 31 日
Yes. This is the easiest way you can do.
LISSA DUVVU
2018 年 9 月 29 日
1 投票
i want to delete all columns data where the 4th row contains number 7
1 件のコメント
Jan
2018 年 10 月 7 日
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.
カテゴリ
ヘルプ センター および File Exchange で Multidimensional Arrays についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!