To remove elements from a matrix and convert into single column
1 次查看(过去 30 天)
显示 更早的评论
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 个评论
回答(2 个)
KSSV
2016-12-22
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 个评论
Sunag R A
2016-12-22
1 个评论
KSSV
2016-12-22
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(:))';
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrices and Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!