can you help me to correct this program i write it to remove the rows who The sum of its elements is zero
Información
La pregunta está cerrada. Vuélvala a abrir para editarla o responderla.
Mostrar comentarios más antiguos
for i=1:46
h=sum(ans(i,2:13))
i=i+1;
if h==0
ans(~any(ans,2),:)=[];
end
end
Respuestas (1)
Paolo
el 26 de Jun. de 2018
For matrix a
a(~sum(a,2),:) = []
6 comentarios
ziad abdul
el 26 de Jun. de 2018
ziad abdul
el 26 de Jun. de 2018
Guillaume
el 26 de Jun. de 2018
@Ziad, Paolo's answer is the most efficient way of removing rows whose sum is zero. It is also correct, so coming up with other ways would be a waste of time, since they would all produce the same result.
So, if it doesn't work it's because either you're not asking the right thing or you're doing something wrong. For us to know what the problem is on your end, give us an example of input and the desired result.
Image Analyst
el 26 de Jun. de 2018
Also DON'T use ans as a variable name. This is the default variable name but it's also a temporary, scratch variable that could be overwritten at any time unexpectedly so it's not something you should depend upon.
For that matter, don't use i or j (the imaginary number) as a variable either. Use k, row, ii, index, or some other name instead.
Matt J
el 26 de Jun. de 2018
For that matter, don't use i or j (the imaginary number) as a variable either. Use k, row, ii, index, or some other name instead.
Or, don't use i,j as the imaginary number. Use 1i or 1j instead.
La pregunta está cerrada.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!