How do I take the average of a zeros vector without dividing by the unpopulated zeros?
Mostrar comentarios más antiguos
I am using real time data coming in and it is being populated into a matrix of zeros. I have the current code...
handles.vxdata= zeros(2400)
handles.speedmax= max(handles.vxdata)
%This works perfect b/c it just picks the max value out of the zeros vector
handles.speedavg=mean(handles.vxdata)
%I am having trouble with this command because it is taking my matrix of zeros and dividing by all the values in the vector, including the zeros that have not been populated with real time data.
I am looking to create a command that only uses the data in the matrix that has values.
Respuesta aceptada
Más respuestas (1)
Walter Roberson
el 12 de Mzo. de 2013
If you are using a vector instead of a matrix, then
handles.speedavg = mean(nonzeros(handles.vxdata));
Categorías
Más información sobre Logical en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!