How do I exclude zeros from a matrix?
显示 更早的评论
How do I exclude zeros from a matrix and create a new matrix? For example:
A = [1 2 0 3 0 4 5 0; 7 0 0 0 2 3 4 1] and I want
A = [1 2 3 4 5 0 0 0; 7 2 3 4 1 0 0 0]
?
采纳的回答
更多回答(1 个)
Zhang lu
2013-4-29
You just show an simple matrix , which has the same zeros in each row. So,if you matirx is this case, the code as first one. else, you can try the second code.
clear all
clc
A =[ 1 2 0 3 0 4 5 0
7 0 0 0 2 3 4 1];
A=A';
New_A=reshape(A(A~=0),[],size(A,2))';
New_A(:,size(A,1))=0
clear all
clc
A =[ 1 2 0 3 0 4 5 0
7 0 0 0 2 3 4 1
1 5 6 5 5 0 0 3];
[m,n]=size(A);
for i=1:m
B=A(i,A(i,:)~=0);
New_A(i,1:length(B))=B;
end
New_A(i,n)=0
类别
在 帮助中心 和 File Exchange 中查找有关 Programming 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!