To remove elements from a matrix and convert into single column
1 view (last 30 days)
Show older comments
Hi,
I have one problem with the removal of elements in a matrix, say I have the matrix of 3*3 as
7 8 9;
4 5 6;
1 2 3
I want to extract only 1 2 3 and 7 8 9 nos and that too these should be in a single column as
1
2
3
7
8
9
And also this is in for loop with i = 1:9
How can I do this inside the for loop?
Thanks and Regards,
Sunag R A.
0 Comments
Answers (2)
KSSV
on 22 Dec 2016
Why loop you can straight away extract what you want:
A = [7 8 9; 4 5 6; 1 2 3] ;
% without loop
iwant = [A(end,:) A(1,:)] ;
Read about matlab indexing: https://www.mathworks.com/company/newsletters/articles/matrix-indexing-in-matlab.html
0 Comments
Sunag R A
on 22 Dec 2016
1 Comment
KSSV
on 22 Dec 2016
You can remove / delete 4,5,6 which falls in second row using
A = [7 8 9; 4 5 6; 1 2 3] ;
A(2,:) = []
To check with many numbers, you have to give conditions, like what numbers you want to delete/ remove.
A = [7 8 9; 4 5 6; 1 2 3] ;
% remove 4,5,6
[m,n] = size(A) ;
B = A ;
for i = 1:m
if any(A(i,:) >=4 & A(i,:)<=6)
B(i,:) = [] ;
end
end
% arrange B in column
iwant = sort(B(:))';
See Also
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!